| NumValue of string
| OptValue of value option
| ListValue of value list
- | LocValue of Stdpp.location
+ (* optional name of Ast.Symbols that we want to contain the interpretation of this literal
+ * location of the literal we are parsing
+ * optional uri, optional desc *)
+ | DisambiguationValue of (string option * Stdpp.location * string option * string option)
type value_type =
| TermType of int (* the level of the expected term *)
type binding = string * (value_type * value)
type t = binding list
+(* let rec pp_value = function
+ | TermValue t -> "T#" ^ NotationPp.pp_term (new NCicPp.status) t
+ | StringValue (Ident i) -> "I#" ^ i
+ | StringValue (Var v) -> "V#" ^ v
+ | NumValue n -> "N#" ^ n
+ | OptValue None -> "O#None"
+ | OptValue (Some v) -> "O#" ^ pp_value v
+ | ListValue vl -> "L#[" ^ (String.concat ";" (List.map pp_value vl)) ^ "]"
+ | DisambiguationValue _ -> "D#"
+
+let pp_binding = function
+ | s, (ty,v) -> Printf.sprintf "{ %s := %s : %s }" s (pp_value v) "..."
+
+let pp_env e = String.concat " " (List.map pp_binding e) *)
+
let lookup env name =
try
List.assoc name env