diff options
| author | Marc Vertes <mvertes@free.fr> | 2024-03-11 08:46:20 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-11 08:46:20 +0100 |
| commit | 73eb1891da7171f2bea0d3eb36e3458f267e6f19 (patch) | |
| tree | feacda8284413bcf2e7f5c712882cfe41ebe1594 /parser/decl.go | |
| parent | e02428ebd435dd2366231918f2388ab4fccf50c8 (diff) | |
| parent | 8c4fa9d85cd274439dbd7d0a5c699fe1cea557dc (diff) | |
Merge pull request #2 from mvertes/vm-type
feat: add type representation in vm package
Diffstat (limited to 'parser/decl.go')
| -rw-r--r-- | parser/decl.go | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/parser/decl.go b/parser/decl.go index 2c8941d..d794131 100644 --- a/parser/decl.go +++ b/parser/decl.go @@ -4,14 +4,14 @@ import ( "errors" "go/constant" "go/token" - "reflect" "strings" "github.com/mvertes/parscan/lang" "github.com/mvertes/parscan/scanner" + "github.com/mvertes/parscan/vm" ) -var nilValue = reflect.ValueOf(nil) +var nilValue = vm.ValueOf(nil) func (p *Parser) ParseConst(in Tokens) (out Tokens, err error) { if len(in) < 2 { @@ -78,7 +78,7 @@ func (p *Parser) parseConstLine(in Tokens) (out Tokens, err error) { kind: symConst, index: unsetAddr, cval: cval, - value: reflect.ValueOf(constValue(cval)), + value: vm.ValueOf(constValue(cval)), local: p.funcScope != "", used: true, } @@ -225,7 +225,7 @@ func (p *Parser) parseTypeLine(in Tokens) (out Tokens, err error) { if err != nil { return out, err } - p.addSym(unsetAddr, in[0].Str, reflect.New(typ).Elem(), symType, typ, p.funcScope != "") + p.addSym(unsetAddr, in[0].Str, vm.NewValue(typ), symType, typ, p.funcScope != "") return out, err } |
