nightshade

The nightshade programming language, compiler and tools (WIP)
Log | Files | Refs | README

parser.ads (463B)



with Lexer; use Lexer;
with Types; use Types;

package Parser is

   type Parser is record
      Source    : Source_Ref;
      File_Name : File_Name_Ref;
      Tokens    : Types.Token_Vector.Vector;
      AST       : Declaration_Vectors.Vector;
      Pos       : Positive;
   end record;

   function Init
     (File_Name : File_Name_Ref; Source : Source_Ref; Tokens : Types.Token_Vector.Vector) return Parser;
   procedure Parse (P : in out Parser);
end Parser;