newExecutionFrame creates an ExecutionFrame for the given input without a timeout context.
(input any)
| 440 | |
| 441 | // newExecutionFrame creates an ExecutionFrame for the given input without a timeout context. |
| 442 | func (p *prog) newExecutionFrame(input any) (*interpreter.ExecutionFrame, error) { |
| 443 | frame, err := interpreter.NewExecutionFrame(input) |
| 444 | if err != nil { |
| 445 | return nil, err |
| 446 | } |
| 447 | if p.defaultVars != nil { |
| 448 | // Update the frame's activation in place. |
| 449 | frame.Activation = interpreter.NewHierarchicalActivation(p.defaultVars, frame.Activation) |
| 450 | } |
| 451 | |
| 452 | return frame, nil |
| 453 | } |
| 454 | |
| 455 | // newAsyncFrame creates an ExecutionFrame configured for asynchronous evaluation under the |
| 456 | // given context, wiring the observer and concurrency limit from the program options. |
no test coverage detected