MCPcopy Create free account
hub / github.com/effect-app/libs / evalExpr

Function evalExpr

packages/infra/src/Store/Memory.ts:82–93  ·  view source on GitHub ↗
(value: unknown, expression: ComputedProjectionMathIrExpression)

Source from the content-addressed store, hash-verified

80 ? (_value: unknown) => true
81 : (value: unknown) => codeFilter3_(filter, value)
82 const evalExpr = (value: unknown, expression: ComputedProjectionMathIrExpression): number => {
83 switch (expression._tag) {
84 case "field": {
85 const v = get(value, expression.field)
86 return typeof v === "number" ? v : Number(v) || 0
87 }
88 case "mul":
89 return evalExpr(value, expression.left) * evalExpr(value, expression.right)
90 default:
91 return assertUnreachable(expression)
92 }
93 }
94 switch (computed._tag) {
95 case "relation-count":
96 return relation.reduce<number>((acc, value) => matches(value) ? acc + 1 : acc, 0)

Callers 1

computeProjectionValueFunction · 0.85

Calls 3

getFunction · 0.90
assertUnreachableFunction · 0.90
NumberInterface · 0.50

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…