Camlinternal...neTypes.TABLE(3)

πŸ’– NAME πŸ’–

Okay so this is the OCaml library manual page for CamlinternalMenhirLib.EngineTypes.TABLE, and the description is literally no description. That's the whole NAME section, bestie. No cap. It's giving "module type with main character energy" ✨.

🧚 Module type 🧚

The module type is CamlinternalMenhirLib.EngineTypes.TABLE. That's the full name, periodt. It's a module type, so it's the signature situation, not a runnable module. The page doesn't give any extra description for it, so we're not inventing one 🫢.

✨ Documentation ✨

The signature opener is exactly:

Module type TABLE
 = sig end

Then inside TABLE, here's every type, value, exception, and module in the order the page lists them. We're keeping the whole roster β€” no skipping, no "TL;DR" πŸ’….

  • type state
  • val number : state -> int
  • type token
  • type terminal
  • type nonterminal
  • type semantic_value
  • val token2terminal : token -> terminal
  • val token2value : token -> semantic_value
  • val error_terminal : terminal
  • val error_value : semantic_value
  • val foreach_terminal : (terminal -> 'a -> 'a) -> 'a -> 'a
  • type production
  • val production_index : production -> int
  • val find_production : int -> production
  • val default_reduction : state -> ('env -> production -> 'answer) -> ('env -> 'answer) -> 'env -> 'answer
  • val action : state -> terminal -> semantic_value -> ('env -> bool -> terminal -> semantic_value -> state -> 'answer) -> ('env -> production -> 'answer) -> ('env -> 'answer) -> 'env -> 'answer
  • val maybe_shift_t : state -> terminal -> state option β€” okay so maybe_shift_t s t is the transition vibe check: does there exist a transition out of state s, labeled with terminal symbol t, to some state s'? If yes, you get Some s'. If not, you get None. Slay.
  • val may_reduce_prod : state -> terminal -> production -> bool β€” may_reduce_prod s t prod asks whether in state s, with lookahead symbol t, the automaton reduces production prod. This test accounts for the possible existence of a default reduction. So yes, the default-reduction possibility is included in the check, fr fr.
  • val goto_nt : state -> nonterminal -> state
  • val goto_prod : state -> production -> state
  • val maybe_goto_nt : state -> nonterminal -> state option
  • val lhs : production -> nonterminal
  • val is_start : production -> bool
  • exception Error
  • type semantic_action β€” the full definition is exactly this, and yes it's a whole multi-line moment:
type semantic_action = (state, semantic_value, token)
CamlinternalMenhirLib.EngineTypes.env -> (state, semantic_value)
CamlinternalMenhirLib.EngineTypes.stack
  • val semantic_action : production -> semantic_action
  • val may_reduce : state -> production -> bool
  • val log : bool
  • module Log : sig end β€” yep, empty signature. That's the whole line, bestie πŸŽ€.
One tiny thing to keep in mind: the two prose notes above are the only explanatory bits the page gives for those entries. Everything else is the bare signature, so we're not adding extra lore.

That's the whole page, bestie πŸ¦‹. The footer/source/version line credits OCamldoc, dated 2026-06-22, and the page tag is Camlinternal...neTypes.TABLE(3). Bye πŸ’….

πŸ“¦ where this page comes from