KiCad PCB EDA Suite
|
#include <libeval_compiler.h>
Public Member Functions | |
VALUE () | |
VALUE (const wxString &aStr, bool aIsWildcard=false) | |
VALUE (const double aVal) | |
virtual | ~VALUE () |
virtual double | AsDouble () const |
virtual const wxString & | AsString () const |
virtual bool | EqualTo (CONTEXT *aCtx, const VALUE *b) const |
virtual bool | NotEqualTo (CONTEXT *aCtx, const VALUE *b) const |
VAR_TYPE_T | GetType () const |
void | Set (double aValue) |
void | SetDeferredEval (std::function< double()> aLambda) |
void | SetDeferredEval (std::function< wxString()> aLambda) |
void | Set (const wxString &aValue) |
void | Set (const VALUE &val) |
void | SetUnits (const EDA_UNITS aUnits) |
EDA_UNITS | GetUnits () const |
Static Public Member Functions | |
static VALUE * | MakeNullValue () |
Private Attributes | |
VAR_TYPE_T | m_type |
double | m_valueDbl |
wxString | m_valueStr |
bool | m_stringIsWildcard |
bool | m_isDeferredDbl |
std::function< double()> | m_lambdaDbl |
bool | m_isDeferredStr |
std::function< wxString()> | m_lambdaStr |
EDA_UNITS | m_units |
Definition at line 195 of file libeval_compiler.h.
|
inline |
Definition at line 198 of file libeval_compiler.h.
References LIBEVAL::VT_UNDEFINED.
|
inline |
Definition at line 202 of file libeval_compiler.h.
References LIBEVAL::VT_STRING.
|
inline |
Definition at line 206 of file libeval_compiler.h.
References LIBEVAL::VT_NUMERIC.
|
inlinevirtual |
Definition at line 217 of file libeval_compiler.h.
|
inlinevirtual |
Definition at line 220 of file libeval_compiler.h.
Referenced by EqualTo(), PCBEXPR_EVALUATOR::Evaluate(), LIBEVAL::UOP::Exec(), and testEvalExpr().
|
inlinevirtual |
Reimplemented in PCBEXPR_NETCLASS_VALUE, PCBEXPR_COMPONENT_CLASS_VALUE, and PCBEXPR_NET_VALUE.
Definition at line 231 of file libeval_compiler.h.
Referenced by PCBEXPR_NETCLASS_VALUE::AsString(), PCBEXPR_COMPONENT_CLASS_VALUE::AsString(), PCBEXPR_NET_VALUE::AsString(), enclosedByAreaFunc(), EqualTo(), PCBEXPR_PINTYPE_VALUE::EqualTo(), LIBEVAL::UOP::Exec(), existsOnLayerFunc(), fromToFunc(), getFieldFunc(), hasComponentClassFunc(), hasNetclassFunc(), inDiffPairFunc(), intersectsAreaFunc(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), memberOfFootprintFunc(), memberOfGroupFunc(), memberOfSheetFunc(), memberOfSheetOrChildrenFunc(), PCBEXPR_NETCLASS_VALUE::NotEqualTo(), PCBEXPR_COMPONENT_CLASS_VALUE::NotEqualTo(), and testEvalExpr().
Definition at line 113 of file libeval_compiler.cpp.
References AsDouble(), AsString(), m_stringIsWildcard, m_type, LIBEVAL::VT_NULL, LIBEVAL::VT_NUMERIC, LIBEVAL::VT_STRING, LIBEVAL::VT_UNDEFINED, and WildCompareString().
Referenced by PCBEXPR_NETCLASS_VALUE::EqualTo(), PCBEXPR_COMPONENT_CLASS_VALUE::EqualTo(), PCBEXPR_NET_VALUE::EqualTo(), LIBEVAL::UOP::Exec(), NotEqualTo(), and testEvalExpr().
|
inline |
Definition at line 247 of file libeval_compiler.h.
Referenced by PCBEXPR_EVALUATOR::Evaluate(), LIBEVAL::UOP::Exec(), PCBEXPR_NETCLASS_VALUE::NotEqualTo(), PCBEXPR_COMPONENT_CLASS_VALUE::NotEqualTo(), and testEvalExpr().
|
inline |
Definition at line 286 of file libeval_compiler.h.
Referenced by PCBEXPR_EVALUATOR::Evaluate(), and LIBEVAL::UOP::Exec().
|
inlinestatic |
Definition at line 210 of file libeval_compiler.h.
References m_type, VALUE, and LIBEVAL::VT_NULL.
Referenced by PCBEXPR_VAR_REF::GetValue().
Reimplemented in PCBEXPR_NETCLASS_VALUE, PCBEXPR_COMPONENT_CLASS_VALUE, and PCBEXPR_NET_VALUE.
Definition at line 137 of file libeval_compiler.cpp.
References EqualTo(), m_type, and LIBEVAL::VT_UNDEFINED.
Referenced by LIBEVAL::UOP::Exec(), PCBEXPR_NETCLASS_VALUE::NotEqualTo(), PCBEXPR_COMPONENT_CLASS_VALUE::NotEqualTo(), and PCBEXPR_NET_VALUE::NotEqualTo().
|
inline |
Definition at line 275 of file libeval_compiler.h.
References m_type, m_valueDbl, m_valueStr, and LIBEVAL::VT_STRING.
|
inline |
Definition at line 269 of file libeval_compiler.h.
References LIBEVAL::VT_STRING.
|
inline |
Definition at line 249 of file libeval_compiler.h.
References LIBEVAL::VT_NUMERIC.
Referenced by PCBEXPR_NETCLASS_VALUE::AsString(), PCBEXPR_COMPONENT_CLASS_VALUE::AsString(), PCBEXPR_NET_VALUE::AsString(), enclosedByAreaFunc(), LIBEVAL::UOP::Exec(), existsOnLayerFunc(), fromToFunc(), LIBEVAL::COMPILER::generateUCode(), getFieldFunc(), hasComponentClassFunc(), hasNetclassFunc(), inDiffPairFunc(), intersectsAreaFunc(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), isBlindBuriedViaFunc(), isCoupledDiffPairFunc(), isMicroVia(), isPlatedFunc(), memberOfFootprintFunc(), memberOfGroupFunc(), memberOfSheetFunc(), and memberOfSheetOrChildrenFunc().
|
inline |
Definition at line 255 of file libeval_compiler.h.
References LIBEVAL::VT_NUMERIC.
Referenced by enclosedByAreaFunc(), existsOnLayerFunc(), getFieldFunc(), hasComponentClassFunc(), hasNetclassFunc(), inDiffPairFunc(), intersectsAreaFunc(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), isCoupledDiffPairFunc(), memberOfFootprintFunc(), memberOfGroupFunc(), memberOfSheetFunc(), and memberOfSheetOrChildrenFunc().
|
inline |
Definition at line 262 of file libeval_compiler.h.
References LIBEVAL::VT_STRING.
|
inline |
Definition at line 284 of file libeval_compiler.h.
|
mutableprivate |
Definition at line 294 of file libeval_compiler.h.
|
mutableprivate |
Definition at line 297 of file libeval_compiler.h.
|
private |
Definition at line 295 of file libeval_compiler.h.
|
private |
Definition at line 298 of file libeval_compiler.h.
|
private |
Definition at line 292 of file libeval_compiler.h.
Referenced by EqualTo().
|
private |
Definition at line 289 of file libeval_compiler.h.
Referenced by EqualTo(), MakeNullValue(), NotEqualTo(), and Set().
|
private |
Definition at line 300 of file libeval_compiler.h.
|
mutableprivate |
Definition at line 290 of file libeval_compiler.h.
Referenced by Set().
|
mutableprivate |
Definition at line 291 of file libeval_compiler.h.
Referenced by Set().