Module Wax_utils.AstSource

Generic AST definitions.

Sourcetype ('desc, 'info) annotated = {
  1. desc : 'desc;
  2. info : 'info;
}

A value of type 'desc annotated with extra information of type 'info (e.g., source location).

Sourcetype location = {
  1. loc_start : Lexing.position;
  2. loc_end : Lexing.position;
}

A source code location range.

Sourceval dummy_loc : location

A location with dummy start/end positions, for synthesized nodes.

Sourceval no_loc : 'desc -> ('desc, location) annotated

no_loc v wraps v with a dummy location.

Sourceval concat_desc : (string, 'info) annotated list -> string

concat_desc l concatenates the string desc of each element of l — e.g. the pieces of a multi-string datastring such as (data "a" "b").