Index: src/natools-s_expressions-interpreters.adb ================================================================== --- src/natools-s_expressions-interpreters.adb +++ src/natools-s_expressions-interpreters.adb @@ -39,10 +39,22 @@ begin Self.Commands.Insert (Name, Cmd); Self.Max_Length := Count'Max (Self.Max_Length, Name'Length); end Add_Command; + + function Has_Command (Self : Interpreter; Name : Atom) return Boolean is + begin + return Self.Commands.Contains (Name); + end Has_Command; + + + function Is_Empty (Self : Interpreter) return Boolean is + begin + return Self.Commands.Is_Empty; + end Is_Empty; + procedure Set_Fallback (Self : in out Interpreter; Name : in Atom) is Index: src/natools-s_expressions-interpreters.ads ================================================================== --- src/natools-s_expressions-interpreters.ads +++ src/natools-s_expressions-interpreters.ads @@ -63,10 +63,14 @@ procedure Add_Command (Self : in out Interpreter; Name : in Atom; Cmd : in Command'Class); + + function Has_Command (Self : Interpreter; Name : Atom) return Boolean; + + function Is_Empty (Self : Interpreter) return Boolean; procedure Set_Fallback (Self : in out Interpreter; Name : in Atom);