added Self to Interpreter_Record

This commit is contained in:
2013-12-11 15:40:57 +00:00
parent 034b50ec9b
commit 9cb26d641f
2 changed files with 57 additions and 45 deletions

View File

@ -245,8 +245,6 @@ package H2.Scheme is
type Memory_Element is mod 2 ** System.Storage_Unit;
type Memory_Size is range 0 .. (2 ** (System.Word_Size - 1)) - 1;
type Interpreter_Record is limited private;
type Trait_Mask is mod 2 ** System.Word_Size;
No_Garbage_Collection: constant Trait_Mask := 2 ** 0;
@ -287,6 +285,10 @@ package H2.Scheme is
-- -----------------------------------------------------------------------------
type Interpreter_Record is limited private;
-- -----------------------------------------------------------------------------
procedure Open (Interp: in out Interpreter_Record;
Initial_Heap_Size:in Memory_Size;
Storage_Pool: in Storage_Pool_Pointer := null);
@ -301,6 +303,7 @@ package H2.Scheme is
procedure Get_Option (Interp: in out Interpreter_Record;
Option: in out Option_Record);
-- -----------------------------------------------------------------------------
private
@ -323,7 +326,9 @@ private
Next: Object_Pointer := Nil_Pointer;
end record;
type Interpreter_Pointer is access all Interpreter_Record;
type Interpreter_Record is limited record
Self: Interpreter_Pointer := null;
Storage_Pool: Storage_Pool_Pointer := null;
Trait: Option_Record (Trait_Option);