# Class ASTInterpreter

- Defined in src/core/parse/interpreter.js:7

##### Index

### Constructors

constructor

### Properties

$filter

### Methods

binary-
binary!=
binary!==
binary*
binary/
binary&&
binary%
binary+
binary<
binary<=
binary==
binary===
binary>
binary>=
binary||
compile
computedMember
identifier
nonComputedMember
recurse
ternary?:
unary-
unary!
unary+
value

## Constructors

### constructor

- new ASTInterpreter($filter: (arg0: any) => any): ASTInterpreter

  #### Parameters

  - $filter: (arg0: any) => any

  #### Returns ASTInterpreter

  - Defined in src/core/parse/interpreter.js:11

## Properties

### $filter

$filter: (arg0: any) => any

- Defined in src/core/parse/interpreter.js:12

## Methods

### binary-

- "binary-"(left: Function, right: Function, context?: any): Function

  Binary minus operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary minus function.

  - Defined in src/core/parse/interpreter.js:309

### binary!=

- "binary!="(left: Function, right: Function, context?: any): Function

  Binary inequality operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary inequality function.

  - Defined in src/core/parse/interpreter.js:402

### binary!==

- "binary!=="(left: Function, right: Function, context?: any): Function

  Binary strict inequality operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary strict inequality function.

  - Defined in src/core/parse/interpreter.js:374

### binary*

- "binary*"(left: Function, right: Function, context?: any): Function

  Binary multiplication operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary multiplication function.

  - Defined in src/core/parse/interpreter.js:325

### binary/

- "binary/"(
  left: any,
  right: any,
  context: any,
  ): (scope: any, locals: any, assign: any) => number | { value: number }

  #### Parameters

  - left: any
  - right: any
  - context: any

  #### Returns (scope: any, locals: any, assign: any) => number | { value: number }

  - Defined in src/core/parse/interpreter.js:332

### binary&&

- "binary&&"(left: Function, right: Function, context?: any): Function

  Binary logical AND operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary logical AND function.

  - Defined in src/core/parse/interpreter.js:471

### binary%

- "binary%"(left: Function, right: Function, context?: any): Function

  Binary division operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary division function.

  - Defined in src/core/parse/interpreter.js:346

### binary+

- "binary+"(left: Function, right: Function, context?: any): Function

  Binary plus operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary plus function.

  - Defined in src/core/parse/interpreter.js:293

### binary<

- "binary<"(left: Function, right: Function, context?: any): Function

  Binary less-than operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary less-than function.

  - Defined in src/core/parse/interpreter.js:416

### binary<=

- "binary<="(left: Function, right: Function, context?: any): Function

  Binary less-than-or-equal-to operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary less-than-or-equal-to function.

  - Defined in src/core/parse/interpreter.js:444

### binary==

- "binary=="(left: Function, right: Function, context?: any): Function

  Binary equality operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary equality function.

  - Defined in src/core/parse/interpreter.js:388

### binary===

- "binary==="(left: Function, right: Function, context?: any): Function

  Binary strict equality operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary strict equality function.

  - Defined in src/core/parse/interpreter.js:360

### binary>

- "binary>"(left: Function, right: Function, context?: any): Function

  Binary greater-than operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary greater-than function.

  - Defined in src/core/parse/interpreter.js:430

### binary>=

- "binary>="(left: Function, right: Function, context?: any): Function

  Binary greater-than-or-equal-to operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary greater-than-or-equal-to function.

  - Defined in src/core/parse/interpreter.js:458

### binary||

- "binary||"(left: Function, right: Function, context?: any): Function

  Binary logical OR operation.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The binary logical OR function.

  - Defined in src/core/parse/interpreter.js:485

### compile

- compile(ast: ASTNode): CompiledExpression

  Compiles the AST into a function.

  #### Parameters

  - ast: ASTNode

    The AST to compile.

  #### Returns CompiledExpression

  - Defined in src/core/parse/interpreter.js:20

### computedMember

- computedMember(
  left: Function,
  right: Function,
  context?: any,
  create?: boolean | 1,
  ): Function

  Returns the value of a computed member expression.

  #### Parameters

  - left: Function

    The left operand function.

  - right: Function

    The right operand function.

  - `Optional` context: any

    The context.

  - `Optional` create: boolean | 1

    Whether to create the member if it does not exist.

  #### Returns Function

  The function returning the computed member value.

  - Defined in src/core/parse/interpreter.js:553

### identifier

- identifier(
  name: string,
  context?: any,
  create?: boolean | 1,
  ): CompiledExpressionFunction

  Returns the value of an identifier.

  #### Parameters

  - name: string

    The identifier name.

  - `Optional` context: any

    The context.

  - `Optional` create: boolean | 1

    Whether to create the identifier if it does not exist.

  #### Returns CompiledExpressionFunction

  The function returning the identifier value.

  - Defined in src/core/parse/interpreter.js:528

### nonComputedMember

- nonComputedMember(
  left: Function,
  right: string,
  context?: any,
  create?: boolean | 1,
  ): Function

  Returns the value of a non-computed member expression.

  #### Parameters

  - left: Function

    The left operand function.

  - right: string

    The right operand function.

  - `Optional` context: any

    The context.

  - `Optional` create: boolean | 1

    Whether to create the member if it does not exist.

  #### Returns Function

  The function returning the non-computed member value.

  - Defined in src/core/parse/interpreter.js:583

### recurse

- recurse(
  ast: ASTNode,
  context?: any,
  create?: boolean | 1,
  ): CompiledExpressionFunction

  Recurses the AST nodes.

  #### Parameters

  - ast: ASTNode

    The AST node.

  - `Optional` context: any

    The context.

  - `Optional` create: boolean | 1

    The create flag.

  #### Returns CompiledExpressionFunction

  The recursive function.

  - Defined in src/core/parse/interpreter.js:81

### ternary?:

- "ternary?:"(
  test: Function,
  alternate: Function,
  consequent: Function,
  context?: any,
  ): Function

  Ternary conditional operation.

  #### Parameters

  - test: Function

    The test function.

  - alternate: Function

    The alternate function.

  - consequent: Function

    The consequent function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The ternary conditional function.

  - Defined in src/core/parse/interpreter.js:500

### unary-

- "unary-"(argument: Function, context?: any): Function

  Unary minus operation.

  #### Parameters

  - argument: Function

    The argument function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The unary minus function.

  - Defined in src/core/parse/interpreter.js:261

### unary!

- "unary!"(argument: Function, context?: any): Function

  Unary negation operation.

  #### Parameters

  - argument: Function

    The argument function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The unary negation function.

  - Defined in src/core/parse/interpreter.js:279

### unary+

- "unary+"(argument: Function, context?: any): Function

  Unary plus operation.

  #### Parameters

  - argument: Function

    The argument function.

  - `Optional` context: any

    The context.

  #### Returns Function

  The unary plus function.

  - Defined in src/core/parse/interpreter.js:243

### value

- value(value: any, context?: any): CompiledExpressionFunction

  Returns the value of a literal.

  #### Parameters

  - value: any

    The literal value.

  - `Optional` context: any

    The context.

  #### Returns CompiledExpressionFunction

  The function returning the literal value.

  - Defined in src/core/parse/interpreter.js:515