Module Region

module Region: sig .. end

Paths

type path = offset list 
type offset = 
| Oindex of Lang.F.term
| Ofield of Lang.field
val access : Lang.F.term -> path -> Lang.F.term
val update : Lang.F.term -> path -> Lang.F.term -> Lang.F.term

Regions

type rpath = roffset list 
type roffset = 
| Rindex of Vset.set
| Rfield of Lang.field
type region 
val empty : region
val full : region
val path : path -> region

Empty, but Full for the path

val rpath : rpath -> region

Empty, but Full for the r-paths

val merge : region -> region -> region
val disjoint : region -> region -> Lang.F.pred
val subset : region -> region -> Lang.F.pred
val equal_but : Lang.F.tau -> region -> Lang.F.term -> Lang.F.term -> Lang.F.pred
val vars : region -> Lang.F.Vars.t
val occurs : Lang.F.var -> region -> bool
val pretty : Stdlib.Format.formatter -> region -> unit