Refactor Runtime

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
This commit is contained in:
Will Hawkins
2026-02-19 22:50:19 -05:00
parent 3693bdc02d
commit d9c8c5aeb0
17 changed files with 897 additions and 439 deletions
+17 -1
View File
@@ -19,7 +19,7 @@ import Common
import Lang
protocol EvaluatableParserTransition {
func evaluate(execution: ProgramExecution) -> (ParserState, ProgramExecution)
func program(execution: ProgramExecution) -> (ParserState, ProgramExecution)
}
protocol EvaluatableParserTransitionStatement {
@@ -28,4 +28,20 @@ protocol EvaluatableParserTransitionStatement {
public protocol Execution {
func execute() -> (ParserState, ProgramExecution)
}
public protocol Compilable {
associatedtype ToCompile
associatedtype Compiled
static func compile(_: ToCompile) -> Result<Compiled>
}
public protocol ParserStateInstance {
func execute(program: ProgramExecution) -> (ParserStateInstance, ProgramExecution)
func done() -> Bool
func current() -> ParserState
}
public protocol ParserExecution {
func execute() -> (ParserState, ProgramExecution)
}