summaryrefslogtreecommitdiff
path: root/usr/austin/eval/value.go
diff options
context:
space:
mode:
Diffstat (limited to 'usr/austin/eval/value.go')
-rw-r--r--usr/austin/eval/value.go27
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
*/