Meta.Thing
Meta-objects, meta-types, meta-patterns.
type t =
| RawSchema of {
location : Beluga_syntax.Syncom.Location.t;
schema : Beluga_syntax.Syncom.Qualified_identifier.t;
}
RawSchema { schema; _ }
is the context schema schema
.
| RawContext of {
location : Beluga_syntax.Syncom.Location.t;
context : Synprs__.Synprs_definition.CLF.Context_object.t;
}
RawPlain { context; _ }
is the boxed contextual LF context [context]
.
| RawTurnstile of {
location : Beluga_syntax.Syncom.Location.t;
context : Synprs__.Synprs_definition.CLF.Context_object.t;
object_ : Synprs__.Synprs_definition.CLF.Context_object.t;
variant : [ `Plain | `Hash | `Dollar | `Dollar_hash ];
}
RawTurnstile { context; variant = `Plain; object_; _ }
is the meta-thing [context |- object_]
or (context |- object_)
.RawTurnstile { context; variant = `Hash; object_; _ }
is the meta-thing #[context |- object_]
or #(context |- object_)
.RawTurnstile { context; variant = `Dollar; object_; _ }
is the meta-thing $[context |- object_]
or $(context |- object_)
.RawTurnstile { context; variant = `Dollar_hash; object_; _ }
is the meta-thing $[context |-# object_]
or $(context |-# object_)
.