X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbin%2Froles%2FrolesTypes.ml;h=a6e9c59bb3d8f6376ea4c8f738447192107ad5fa;hb=277fc8ff21ce3dbd6893b1994c55cf5c06a98355;hp=1535c493be77a484e42547a93fa4c0e62a055cc7;hpb=cfccf434a57e10848d74d06674af4ec9cef0f0ca;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/bin/roles/rolesTypes.ml b/matita/matita/contribs/lambdadelta/bin/roles/rolesTypes.ml index 1535c493b..a6e9c59bb 100644 --- a/matita/matita/contribs/lambdadelta/bin/roles/rolesTypes.ml +++ b/matita/matita/contribs/lambdadelta/bin/roles/rolesTypes.ml @@ -9,40 +9,55 @@ \ / This software is distributed as is, NO WARRANTY. V_______________________________________________________________ *) -type version = int list +type stage = int list type name = string list -type names = (bool*name) list +type nobj = { + mutable nb: bool; + mutable nn: name; +} + +type nobjs = nobj list -type obj = version * name +type oobj = { + mutable ob: bool; + mutable os: stage; + mutable on: name; +} -type objs = (bool*obj) list +type oobjs = oobj list -type role = { - mutable v: version; - mutable o: objs; - mutable n: names; +type robj = { + mutable rb: bool; + mutable rx: bool; + mutable rs: stage; + mutable ro: oobjs; + mutable rn: nobjs; } -type roles = (bool*role) list +type robjs = robj list type status = { - mutable r: roles; - mutable s: version; - mutable t: objs; - mutable w: names; + mutable sm: bool; + mutable sr: robjs; + mutable so: oobjs; + mutable ss: stage; + mutable sn: nobjs; } -type pointer = int list +type step = One of int + | Many of int list + +type pointer = step list type error = EWrongExt of string - | EStage of version + | EStage of stage | ENoStage | EWaiting - | ENameClash of name - | EObjClash of obj - | ERoleClash of role + | ENClash of nobj + | EOClash of oobj + | ERClash of robj | ENoEntry | EWrongSelect | EWrongVersion @@ -50,3 +65,5 @@ type error = EWrongExt of string | EWrongRequest of string * string exception Error of error + +type each = string -> string -> bool -> string -> string -> string -> unit