File tree Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -14,15 +14,23 @@ import (
14
14
//go:embed bootstrap.pl
15
15
var bootstrap string
16
16
17
- // Interpreter is a Prolog interpreter. The zero value is a valid interpreter without any predicates/operators defined.
17
+ // Interpreter is a Prolog interpreter.
18
18
type Interpreter struct {
19
19
engine.VM
20
20
loaded map [string ]struct {}
21
21
}
22
22
23
+ // NewEmpty creates a new Prolog interpreter without any predicates/operators defined.
24
+ func NewEmpty () * Interpreter {
25
+ var i Interpreter
26
+ i .ResetVariableCounter ()
27
+ return & i
28
+ }
29
+
23
30
// New creates a new Prolog interpreter with predefined predicates/operators.
24
31
func New (in io.Reader , out io.Writer ) * Interpreter {
25
32
var i Interpreter
33
+ i .ResetVariableCounter ()
26
34
i .FS = defaultFS {}
27
35
i .SetUserInput (engine .NewInputTextStream (in ))
28
36
i .SetUserOutput (engine .NewOutputTextStream (out ))
You can’t perform that action at this time.
0 commit comments