MCPcopy Create free account
hub / github.com/microsoft/vscode-cpptools / evaluateExpression

Function evaluateExpression

Extension/src/Utility/Text/taggedLiteral.ts:235–238  ·  view source on GitHub ↗
(expression: string, context: Record<string, any>, customResolver = (_prefix: string, _expression: string) => '')

Source from the content-addressed store, hash-verified

233}
234
235export function evaluateExpression(expression: string, context: Record<string, any>, customResolver = (_prefix: string, _expression: string) => ''): Primitive | undefined {
236 const result = expression.match(/\!|==|!=|>=|<=|>|<|\?|\|\||&&/) ? safeEval(render(expression, context, customResolver, true)) as Primitive : render(expression, context, customResolver);
237 return result === '' || result === 'undefined' || result === 'null' || result === null ? undefined : result;
238}
239
240export function recursiveRender<T extends Record<string, any>>(obj: T, context: Record<string, any>, customResolver = (_prefix: string, _expression: string) => ''): T {
241 const result = (is.array(obj) ? [] : {}) as Record<string, any>;

Callers 1

recursiveRenderFunction · 0.85

Calls 1

renderFunction · 0.85

Tested by

no test coverage detected