openshot-audio  0.1.6
Classes | Public Member Functions | List of all members
Expression::Scope Class Reference

#include <juce_Expression.h>

Inheritance diagram for Expression::Scope:
MarkerListScope RelativeCoordinatePositionerBase::ComponentScope RelativeRectangleLocalScope RelativeCoordinatePositionerBase::DependencyFinderScope

Classes

class  Visitor
 

Public Member Functions

 Scope ()
 
virtual ~Scope ()
 
virtual String getScopeUID () const
 
virtual Expression getSymbolValue (const String &symbol) const
 
virtual double evaluateFunction (const String &functionName, const double *parameters, int numParameters) const
 
virtual void visitRelativeScope (const String &scopeName, Visitor &visitor) const
 

Detailed Description

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

Constructor & Destructor Documentation

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

Member Function Documentation

double 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
String Expression::Scope::getScopeUID ( ) const
virtual

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

Reimplemented in RelativeCoordinatePositionerBase::ComponentScope, and MarkerListScope.

Expression 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 RelativeCoordinatePositionerBase::DependencyFinderScope, RelativeRectangleLocalScope, RelativeCoordinatePositionerBase::ComponentScope, and MarkerListScope.

void 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 RelativeCoordinatePositionerBase::DependencyFinderScope, RelativeCoordinatePositionerBase::ComponentScope, and MarkerListScope.


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