summaryrefslogtreecommitdiff
path: root/projects/12/ArrayTest/Array.jack
diff options
context:
space:
mode:
Diffstat (limited to 'projects/12/ArrayTest/Array.jack')
-rw-r--r--projects/12/ArrayTest/Array.jack26
1 files changed, 26 insertions, 0 deletions
diff --git a/projects/12/ArrayTest/Array.jack b/projects/12/ArrayTest/Array.jack
new file mode 100644
index 0000000..343c25c
--- /dev/null
+++ b/projects/12/ArrayTest/Array.jack
@@ -0,0 +1,26 @@
+// This file is part of www.nand2tetris.org
+// and the book "The Elements of Computing Systems"
+// by Nisan and Schocken, MIT Press.
+// File name: projects/12/Array.jack
+
+/**
+ * Represents an array.
+ * In the Jack language, arrays are instances of the Array class.
+ * Once declared, the array entries can be accessed using the usual
+ * syntax arr[i]. Each array entry can hold a primitive data type as
+ * well as any object type. Different array entries can have different
+ * data types.
+ */
+class Array {
+
+ /** Constructs a new Array of the given size. */
+ function Array new(int size) {
+ return Memory.alloc(size);
+ }
+
+ /** Disposes this array. */
+ method void dispose() {
+ do Memory.deAlloc(this);
+ return;
+ }
+}