From 584ca7f9b6fca6da54608d3b28274273b2c9a4b8 Mon Sep 17 00:00:00 2001 From: olpc user Date: Mon, 9 Dec 2019 03:13:14 -0800 Subject: make level-2 have refs --- starts/meaning-vm/level-0/baseref.hpp | 4 ++++ starts/meaning-vm/level-0/common.hpp | 15 ++++++++++----- 2 files changed, 14 insertions(+), 5 deletions(-) (limited to 'starts/meaning-vm/level-0') diff --git a/starts/meaning-vm/level-0/baseref.hpp b/starts/meaning-vm/level-0/baseref.hpp index 068ccfa..fbb7a28 100644 --- a/starts/meaning-vm/level-0/baseref.hpp +++ b/starts/meaning-vm/level-0/baseref.hpp @@ -74,6 +74,10 @@ public: operator level3::ref &() { return *reinterpret_cast(this); } operator level4::ref &() { return *reinterpret_cast(this); } operator level5::ref &() { return *reinterpret_cast(this); } + operator level6::ref &() { return *reinterpret_cast(this); } + operator level7::ref &() { return *reinterpret_cast(this); } + operator level8::ref &() { return *reinterpret_cast(this); } + operator level9::ref &() { return *reinterpret_cast(this); } bool operator==(ref const & other) const { return self.p == other.p; } bool operator!=(ref const & other) const { return self.p == other.p; } diff --git a/starts/meaning-vm/level-0/common.hpp b/starts/meaning-vm/level-0/common.hpp index 613028d..e06e478 100644 --- a/starts/meaning-vm/level-0/common.hpp +++ b/starts/meaning-vm/level-0/common.hpp @@ -28,9 +28,14 @@ struct concept; struct ref; } -namespace level1 { struct ref; template struct vref; } -namespace level2 { struct ref; template struct vref; } -namespace level3 { struct ref; template struct vref; } -namespace level4 { struct ref; template struct vref; } -namespace level5 { struct ref; template struct vref; } +namespace level1 { struct ref; } +namespace level2 { struct ref; } +namespace level3 { struct ref; } +namespace level4 { struct ref; } +namespace level5 { struct ref; } +namespace level6 { struct ref; } +namespace level7 { struct ref; } +namespace level8 { struct ref; } +namespace level9 { struct ref; } + } -- cgit v1.2.3