From f2b20137711c8d6f2e468595d484b1e8ba3b1efd Mon Sep 17 00:00:00 2001 From: Phil Summers Date: Thu, 22 Dec 2016 01:20:08 +0000 Subject: T226: Add secret and hidden properties to the reference tree. --- src/reference_tree.ml | 14 ++++++++++++++ src/reference_tree.mli | 6 ++++++ 2 files changed, 20 insertions(+) (limited to 'src') diff --git a/src/reference_tree.ml b/src/reference_tree.ml index 48de53b..8372ea0 100644 --- a/src/reference_tree.ml +++ b/src/reference_tree.ml @@ -10,6 +10,8 @@ type ref_node_data = { valueless: bool; owner: string option; keep_order: bool; + hidden: bool; + secret: bool; } type t = ref_node_data Vytree.t @@ -28,6 +30,8 @@ let default_data = { valueless = false; owner = None; keep_order = false; + hidden = false; + secret = false; } (* Loading from XML *) @@ -67,6 +71,8 @@ let data_from_xml d x = | Xml.Element ("constraintErrorMessage", _, [Xml.PCData s]) -> {d with constraint_error_message=s} | Xml.Element ("constraint", _, _) -> load_constraint_from_xml d x + | Xml.Element ("hidden", _, _) -> {d with hidden=true} + | Xml.Element ("secret", _, _) -> {d with secret=true} | _ -> raise (Bad_interface_definition "Malformed property tag") in Xml.fold aux d x @@ -173,3 +179,11 @@ let rec validate_path validators_dir node path = let is_multi reftree path = let data = Vytree.get_data reftree path in data.multi + +let is_hidden reftree path = + let data = Vytree.get_data reftree path in + data.hidden + +let is_secret reftree path = + let data = Vytree.get_data reftree path in + data.secret diff --git a/src/reference_tree.mli b/src/reference_tree.mli index f0d7807..3bbfc4b 100644 --- a/src/reference_tree.mli +++ b/src/reference_tree.mli @@ -10,6 +10,8 @@ type ref_node_data = { valueless: bool; owner: string option; keep_order: bool; + hidden: bool; + secret: bool; } exception Validation_error of string @@ -23,3 +25,7 @@ val load_from_xml : t -> string -> t val validate_path : string -> t -> string list -> string list * string option val is_multi : t -> string list -> bool + +val is_hidden : t -> string list -> bool + +val is_secret : t -> string list -> bool -- cgit v1.2.3