Skip to content

This site describes solve-engine as it is on main: 2.43.0, which npm does not have yet. npm installs 2.40.0, so a page may show an answer that version does not give yet.

PluginCallOptions

Defined in: packages/engine/src/parser/BytecodeBuilder.ts:162

How BytecodeBuilder.emitPluginCall emits a call.

readonly optional readsDocument?: boolean;

Defined in: packages/engine/src/parser/BytecodeBuilder.ts:178

The handler reads other lines of the document (a line reference, prev, a total above, a tag or a table column). Such a call still marks the program, and a function body that makes one is refused for that reason by name (FUNCTION_BODY_READS_LINES), rather than as a call that waits: a body is run away from the line that wrote it, with no lines to read. Ignored alongside synchronous, which a call that reads lines never is.


readonly optional synchronous?: boolean;

Defined in: packages/engine/src/parser/BytecodeBuilder.ts:169

The handler never returns a promise: it answers from its arguments as the line runs. Such a call does not mark the program as one that may wait for data, so it is allowed inside a held expression. A handler marked so that does return a promise breaks this contract.