JUCE  v6.1.6 (6.0.8-1114)
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce::Expression::Scope Class Reference

When evaluating an Expression object, this class is used to resolve symbols and perform functions that the expression uses. More...

#include <juce_Expression.h>

Inheritance diagram for juce::Expression::Scope:

Classes

class  Visitor
 Used as a callback by the Scope::visitRelativeScope() method. More...
 

Public Member Functions

 Scope ()
 
virtual ~Scope ()
 
virtual double evaluateFunction (const String &functionName, const double *parameters, int numParameters) const
 Executes a named function. More...
 
virtual String getScopeUID () const
 Returns some kind of globally unique ID that identifies this scope. More...
 
virtual Expression getSymbolValue (const String &symbol) const
 Returns the value of a symbol. More...
 
virtual void visitRelativeScope (const String &scopeName, Visitor &visitor) const
 Creates a Scope object for a named scope, and then calls a visitor to do some kind of processing with this new scope. More...
 

Detailed Description

When evaluating an Expression object, this class is used to resolve symbols and perform functions that the expression uses.

Constructor & Destructor Documentation

◆ Scope()

juce::Expression::Scope::Scope ( )

◆ ~Scope()

virtual juce::Expression::Scope::~Scope ( )
virtual

Member Function Documentation

◆ evaluateFunction()

virtual double juce::Expression::Scope::evaluateFunction ( const String functionName,
const double *  parameters,
int  numParameters 
) const
virtual

Executes a named function.

If the function name is unknown, this can throw an Expression::EvaluationError exception.

Exceptions
Expression::EvaluationError

◆ getScopeUID()

virtual String juce::Expression::Scope::getScopeUID ( ) const
virtual

Returns some kind of globally unique ID that identifies this scope.

Reimplemented in juce::RelativeCoordinatePositionerBase::ComponentScope.

◆ getSymbolValue()

virtual Expression juce::Expression::Scope::getSymbolValue ( const String symbol) const
virtual

Returns the value of a symbol.

If the symbol is unknown, this can throw an Expression::EvaluationError exception. The member value is set to the part of the symbol that followed the dot, if there is one, e.g. for "foo.bar", symbol = "foo" and member = "bar".

Exceptions
Expression::EvaluationError

Reimplemented in juce::RelativeCoordinatePositionerBase::ComponentScope.

◆ visitRelativeScope()

virtual void juce::Expression::Scope::visitRelativeScope ( const String scopeName,
Visitor visitor 
) const
virtual

Creates a Scope object for a named scope, and then calls a visitor to do some kind of processing with this new scope.

If the name is valid, this method must create a suitable (temporary) Scope object to represent it, and must call the Visitor::visit() method with this new scope.

Reimplemented in juce::RelativeCoordinatePositionerBase::ComponentScope.


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