blob: a68fa0e1ffee0c9c65856b2d4c280a5937ab21b8 [file] [log] [blame]
----
with Predicate2.Containers;
with Predicate2.Project.Registry.Attribute;
with Predicate2.Source_Reference;
private with Ada.Strings.Unbounded;
package Predicate2.Project.Name_Values is
use type Containers.Count_Type;
use all type Registry.Attribute.Value_Kind;
type Object is new Source_Reference.Object with private;
Undefined : constant Object;
subtype Value_Kind is Registry.Attribute.Value_Kind;
function Kind (Self : Object'Class) return Registry.Attribute.Value_Kind
with Pre => Object (Self) /= Undefined;
-- Returns the Kind for the Name/Values pair object
private
use Ada.Strings.Unbounded;
type Object is new Source_Reference.Object with record
Kind : Registry.Attribute.Value_Kind := List;
Name : Unbounded_String;
Values : Containers.Value_List;
end record;
Undefined : constant Object :=
Object'(Source_Reference.Object with others => <>);
end Predicate2.Project.Name_Values;