37 lines
783 B
MonkeyC
37 lines
783 B
MonkeyC
// Constructor.
|
|
fn List() {
|
|
let result = {
|
|
data: [],
|
|
push: (self, item) => {
|
|
push(self.data, item);
|
|
},
|
|
pop: (self) => {
|
|
return pop(self.data);
|
|
},
|
|
len: (self) => {
|
|
return len(self.data);
|
|
}
|
|
};
|
|
|
|
return result;
|
|
}
|
|
|
|
// Instantiation.
|
|
let list = List();
|
|
print("new list", list);
|
|
|
|
// Pushing 5 items in a loop.
|
|
let index = 0;
|
|
loop {
|
|
if (index >= 5) break;
|
|
list.push(index);
|
|
index = index + 1;
|
|
}
|
|
|
|
print("pushed list", list); // Misc accesses.
|
|
print("length list", list.len()); // Misc accesses.
|
|
print("poped item", list.pop()); // Misc accesses.
|
|
print("poped list", list); // Misc accesses.
|
|
|
|
print("list.data", list.data);
|
|
print("list[\"data\"]", list["data"]);
|