package Scripting.Expressions.Literals is
type Literal is new Expression with private;
type A_Literal is access all Literal'Class;
function Create_Literal( token : not null A_Token ) return A_Literal;
private
type Literal is new Expression with
record
value : Value_Ptr;
end record;
procedure Construct( this : access Literal;
loc : Token_Location;
value : Value_Ptr'Class );
function Evaluate( this : access Literal;
context : not null A_Eval_Context ) return Value_Ptr;
end Scripting.Expressions.Literals;