in src/graph/FilterCreator.ts [48:70]
private _compile(filter: FilterExpression): string {
if (filter == null || filter.length <= 1) {
return "true";
}
const operator: FilterOperator = <FilterOperator>filter[0];
const operation: string =
operator === "==" ? this._compileComparisonOp("===", <string>filter[1], filter[2], false) :
operator === "!=" ? this._compileComparisonOp("!==", <string>filter[1], filter[2], false) :
operator === ">" ||
operator === ">=" ||
operator === "<" ||
operator === "<=" ? this._compileComparisonOp(operator, <string>filter[1], filter[2], true) :
operator === "in" ?
this._compileInOp<FilterValue>(<string>filter[1], <FilterValue[]>filter.slice(2)) :
operator === "!in" ?
this._compileNegation(
this._compileInOp<FilterValue>(<string>filter[1], <FilterValue[]>filter.slice(2))) :
operator === "all" ? this._compileLogicalOp(<FilterExpression[]>filter.slice(1), "&&") :
"true";
return "(" + operation + ")";
}