Options
All
  • Public
  • Public/Protected
  • All
Menu

Represents Rego expression

export

Hierarchy

  • RegoExp

Index

Constructors

Properties

hasNoResolvableRef: boolean = false

Whether the expression contains any resolvable references. reference start with input. should be considered as non-resolvable in context of partial evaluation. When this field is set to true, we should not attempt to evaluate this expression. i.e. evaluate() method should return immediately. This will speed up evaluation process.

memberof

RegoExp

isCompleteEvaluated: boolean = false

If it's complete evaluated

memberof

RegoExp

isNegated: boolean

Whether this expression is a negative expression i.e. it's final evaluation result should be false if result is true

memberof

RegoExp

parser: default

Ref to Opa Parser

memberof

RegoExp

terms: RegoTerm[]

All RegoTerms belongs to this expression

memberof

RegoExp

value: RegoValue = null

The value of the expression

memberof

RegoExp

Methods

  • asString(): string
  • Print concise format expression string presentation. Can be used for debugging

    memberof

    RegoExp

    Returns string

  • isMatched(): boolean
  • Whether or not a expression should be considered as "matched". If all expressions of a rule are "matched", the rule will be considered as "matched". Thus, the rule has a value.

    Please note: if an expression's value is 0, empty string "", null etc, the expression is considered as "matched". We only consider an expression as "Not Matched" when the expression has value false or is undefined.

    memberof

    RegoExp

    Returns boolean

  • isResolvable(): boolean
  • Whether or not the expression is resolvable now.

    memberof

    RegoExp

    Returns boolean

  • termsAsString(): string
  • For debug usage, print terms as easy to ready short string

    memberof

    RegoExp

    Returns string

  • toConciseData(): { negated: boolean; operands: { isRef: boolean; value: RegoTermValue }[]; operator: string }
  • Returns { negated: boolean; operands: { isRef: boolean; value: RegoTermValue }[]; operator: string }

    • negated: boolean
    • operands: { isRef: boolean; value: RegoTermValue }[]
    • operator: string
  • toConciseJSON(): string
  • toData(index?: number, ignoreIndex?: boolean, ignoreNegated?: boolean): { index: undefined; negated: boolean; terms: { type: string; value: RegoTermValue }[] } | { index: number; negated: boolean; terms: { type: string; value: RegoTermValue }[] } | { index: undefined; negated: undefined; terms: { type: string; value: RegoTermValue }[] } | { index: number; negated: undefined; terms: { type: string; value: RegoTermValue }[] }
  • Parameters

    • index: number = 0
    • ignoreIndex: boolean = false
    • ignoreNegated: boolean = false

    Returns { index: undefined; negated: boolean; terms: { type: string; value: RegoTermValue }[] } | { index: number; negated: boolean; terms: { type: string; value: RegoTermValue }[] } | { index: undefined; negated: undefined; terms: { type: string; value: RegoTermValue }[] } | { index: number; negated: undefined; terms: { type: string; value: RegoTermValue }[] }

  • toHumanReadableString(): string
  • Output human readable string

    memberof

    RegoExp

    Returns string

  • toJSON(index?: number, ignoreIndex?: boolean, ignoreNegated?: boolean): string
  • Parameters

    • index: number = 0
    • ignoreIndex: boolean = false
    • ignoreNegated: boolean = false

    Returns string

  • Convert operator term to string and put rest operands into an array. And then return a [Operator, Operands] structure

    memberof

    RegoExp

    Returns [RegoOperatorString, RegoTerm[]]

Generated using TypeDoc