sig
type t = {
mutable generator0 : Generator0.t;
mutable env : Environment.t;
}
and earray = {
mutable generator0_array : Generator0.t array;
mutable array_env : Environment.t;
}
type typ = Generator0.typ = LINE | RAY | VERTEX | LINEMOD | RAYMOD
val make : Linexpr1.t -> Generator0.typ -> Generator1.t
val copy : Generator1.t -> Generator1.t
val print : Stdlib.Format.formatter -> Generator1.t -> unit
val get_typ : Generator1.t -> Generator0.typ
val iter : (Coeff.t -> Var.t -> unit) -> Generator1.t -> unit
val set_typ : Generator1.t -> Generator0.typ -> unit
val set_list : Generator1.t -> (Coeff.t * Var.t) list -> unit
val set_array : Generator1.t -> (Coeff.t * Var.t) array -> unit
external get_coeff : Generator1.t -> Var.t -> Coeff.t
= "camlidl_generator1_ap_generator1_get_coeff"
external set_coeff : Generator1.t -> Var.t -> Coeff.t -> unit
= "camlidl_generator1_ap_generator1_set_coeff"
external extend_environment : Generator1.t -> Environment.t -> Generator1.t
= "camlidl_generator1_ap_generator1_extend_environment"
external extend_environment_with : Generator1.t -> Environment.t -> unit
= "camlidl_generator1_ap_generator1_extend_environment_with"
val array_make : Environment.t -> int -> Generator1.earray
val array_print :
?first:(unit, Stdlib.Format.formatter, unit) Stdlib.format ->
?sep:(unit, Stdlib.Format.formatter, unit) Stdlib.format ->
?last:(unit, Stdlib.Format.formatter, unit) Stdlib.format ->
Stdlib.Format.formatter -> Generator1.earray -> unit
val array_length : Generator1.earray -> int
val array_get : Generator1.earray -> int -> Generator1.t
val array_set : Generator1.earray -> int -> Generator1.t -> unit
external array_extend_environment :
Generator1.earray -> Environment.t -> Generator1.earray
= "camlidl_generator1_ap_generator1_array_extend_environment"
external array_extend_environment_with :
Generator1.earray -> Environment.t -> unit
= "camlidl_generator1_ap_generator1_array_extend_environment_with"
val get_env : Generator1.t -> Environment.t
val get_linexpr1 : Generator1.t -> Linexpr1.t
val get_generator0 : Generator1.t -> Generator0.t
end