Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Syntax.Parse.Type

Stable public facade for the generated surface-type parser.

Structural ownership lives in Syntax.Parse.GeneratedType. The generated parser preserves its exact LR completion receipt internally; this facade erases that private state only at the established Parsed(Ty) boundary.

Functions and Values

parse_type

parse_type : (Syntax.Cursor.Cursor, Int) -> Syntax.Parse.Support.Parsed(Syntax.Ast.Ty)

Parse one complete surface type.

parse_type_head

parse_type_head : (Syntax.Cursor.Cursor, Int) -> Syntax.Parse.Support.Parsed(Syntax.Ast.Ty)

Parse through the arrow layer while leaving a trailing effect suffix for declaration return-annotation disambiguation.

parse_type_arg

parse_type_arg : (Syntax.Cursor.Cursor, Int) -> Syntax.Parse.Support.Parsed(Syntax.Ast.Ty)

Parse a type-constructor argument, including row and natural arguments.

parse_effect_row

parse_effect_row : (Syntax.Cursor.Cursor, Int) -> Syntax.Parse.Support.Parsed(Syntax.Ast.Row)

Parse an effect suffix including its leading !.

parse_eff_label

parse_eff_label : (Syntax.Cursor.Cursor, Int) -> Syntax.Parse.Support.Parsed(Syntax.Ast.EffLabel)

Parse one effect label with optional constructor arguments.