diff options
Diffstat (limited to 'usr/austin/eval/value.go')
-rw-r--r-- | usr/austin/eval/value.go | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/usr/austin/eval/value.go b/usr/austin/eval/value.go index 5849c16d8..7f58b55f6 100644 --- a/usr/austin/eval/value.go +++ b/usr/austin/eval/value.go @@ -442,6 +442,33 @@ func (t *stringType) value(v string) StringValue { } /* + * Array + */ + +type arrayV []Value + +func (*arrayV) Type() Type { + panic("Not implemented"); +} + +func (v *arrayV) String() string { + return fmt.Sprint(*v); +} + +func (v *arrayV) Get() ArrayValue { + return v; +} + +func (v *arrayV) Elem(i int64) Value { + return (*v)[i]; +} + +func (t *ArrayType) value(v []Value) ArrayValue { + res := arrayV(v); + return &res; +} + +/* * Pointer */ |