package links

  1. Overview
  2. Docs
type 'a partial_op = {
  1. partial_node : Sugartypes.tyarg list * 'a;
  2. assoc : Operators.Associativity.t;
  3. precedence : int;
  4. position : SourceCode.Position.t;
}
type exp =
  1. | Op of op
  2. | Operand of Sugartypes.phrase
val precedence : 'a partial_op -> int
val op_precedence : op -> int
val op_assoc : op -> Operators.Associativity.t
val partial_op : (Sugartypes.tyarg list * 'a) -> Operators.Associativity.t -> int -> SourceCode.Position.t -> 'a partial_op
module Optable : sig ... end
val shift : op Stack.t -> exp Queue.t -> unit
val shift_all : op Stack.t -> exp Queue.t -> unit
val push_operator : op Stack.t -> exp Queue.t -> op -> unit
val reduce : exp Queue.t -> Sugartypes.phrase
class reorder : Optable.t -> object ... end
class shunt : Optable.t -> object ... end
module Untyped : sig ... end