130 const double* parameters,
int numParameters)
const;
140 virtual void visit (
const Scope&) = 0;
188 bool operator== (
const Symbol&)
const noexcept;
189 bool operator!= (
const Symbol&)
const noexcept;
227 Type getType() const noexcept;
230 String getSymbolOrFunction() const;
235 int getNumInputs() const;
virtual Expression getSymbolValue(const String &symbol) const
virtual void visitRelativeScope(const String &scopeName, Visitor &visitor) const
virtual String getScopeUID() const
virtual double evaluateFunction(const String &functionName, const double *parameters, int numParameters) const
Expression adjustedToGiveNewResult(double targetValue, const Scope &scope) const
void findReferencedSymbols(Array< Symbol > &results, const Scope &scope) const
static Expression function(const String &functionName, const Array< Expression > ¶meters)
bool usesAnySymbols() const
Expression withRenamedSymbol(const Symbol &oldSymbol, const String &newName, const Scope &scope) const
Expression operator-(const Expression &) const
static Expression parse(String::CharPointerType &stringToParse, String &parseError)
bool referencesSymbol(const Symbol &symbol, const Scope &scope) const
static Expression symbol(const String &symbol)