KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PCBEXPR_VAR_REF Class Reference

#include <pcbexpr_evaluator.h>

Inheritance diagram for PCBEXPR_VAR_REF:
LIBEVAL::VAR_REF PCBEXPR_COMPONENT_CLASS_REF PCBEXPR_NETCLASS_REF PCBEXPR_NETNAME_REF PCBEXPR_TYPE_REF

Classes

struct  MATCHED_PROPERTY
 

Public Member Functions

 PCBEXPR_VAR_REF (int aItemIndex)
 
 ~PCBEXPR_VAR_REF () override=default
 
void SetType (LIBEVAL::VAR_TYPE_T type)
 
LIBEVAL::VAR_TYPE_T GetType () const override
 
void AddAllowedClass (TYPE_ID aTypeHash, PROPERTY_BASE *aProperty, PCBEXPR_PROPERTY_KIND aKind)
 
void SetNavigation (std::vector< PCBEXPR_NAV_STEP > aNavigation)
 
LIBEVAL::VALUEGetValue (LIBEVAL::CONTEXT *aCtx) override
 
BOARD_ITEMGetObject (const LIBEVAL::CONTEXT *aCtx) const
 

Static Public Member Functions

static PCBEXPR_PROPERTY_KIND ClassifyProperty (const PROPERTY_BASE *aProperty)
 
static LIBEVAL::VAR_TYPE_T ExpressionType (PCBEXPR_PROPERTY_KIND aKind)
 

Private Attributes

std::unordered_map< TYPE_ID, MATCHED_PROPERTYm_matchingTypes
 
int m_itemIndex
 
LIBEVAL::VAR_TYPE_T m_type
 
std::vector< PCBEXPR_NAV_STEPm_navigation
 

Detailed Description

Definition at line 133 of file pcbexpr_evaluator.h.

Constructor & Destructor Documentation

◆ PCBEXPR_VAR_REF()

◆ ~PCBEXPR_VAR_REF()

PCBEXPR_VAR_REF::~PCBEXPR_VAR_REF ( )
overridedefault

Member Function Documentation

◆ AddAllowedClass()

void PCBEXPR_VAR_REF::AddAllowedClass ( TYPE_ID aTypeHash,
PROPERTY_BASE * aProperty,
PCBEXPR_PROPERTY_KIND aKind )
inline

Definition at line 150 of file pcbexpr_evaluator.h.

References m_matchingTypes.

◆ ClassifyProperty()

◆ ExpressionType()

◆ GetObject()

◆ GetType()

LIBEVAL::VAR_TYPE_T PCBEXPR_VAR_REF::GetType ( ) const
inlineoverridevirtual

Implements LIBEVAL::VAR_REF.

Definition at line 148 of file pcbexpr_evaluator.h.

References m_type.

◆ GetValue()

◆ SetNavigation()

void PCBEXPR_VAR_REF::SetNavigation ( std::vector< PCBEXPR_NAV_STEP > aNavigation)
inline

Definition at line 157 of file pcbexpr_evaluator.h.

References m_navigation.

◆ SetType()

Member Data Documentation

◆ m_itemIndex

int PCBEXPR_VAR_REF::m_itemIndex
private

Definition at line 174 of file pcbexpr_evaluator.h.

Referenced by GetObject(), GetValue(), and PCBEXPR_VAR_REF().

◆ m_matchingTypes

std::unordered_map<TYPE_ID, MATCHED_PROPERTY> PCBEXPR_VAR_REF::m_matchingTypes
private

Definition at line 173 of file pcbexpr_evaluator.h.

Referenced by AddAllowedClass(), and GetValue().

◆ m_navigation

std::vector<PCBEXPR_NAV_STEP> PCBEXPR_VAR_REF::m_navigation
private

Definition at line 176 of file pcbexpr_evaluator.h.

Referenced by GetObject(), and SetNavigation().

◆ m_type

LIBEVAL::VAR_TYPE_T PCBEXPR_VAR_REF::m_type
private

Definition at line 175 of file pcbexpr_evaluator.h.

Referenced by GetType(), GetValue(), PCBEXPR_VAR_REF(), and SetType().


The documentation for this class was generated from the following files: