Zig.Parser (zigler v0.9.1) View Source
main parsing module: Handles general parsing of nif, resource directives and code elements succeeding those.
Link to this section Summary
Functions
Parses the given binary
as parse_zig_block.
Link to this section Types
Specs
line_info() :: {non_neg_integer(), non_neg_integer()}
Specs
Specs
t() :: %Zig.Parser{ file: Path.t(), global: [Zig.Parser.Nif.t()], local: Zig.Parser.Nif.t() | Zig.Parser.ResourceCleanup.t() | {:doc, iodata()}, module: module(), zig_block_line: non_neg_integer() }
Link to this section Functions
Specs
parse(String.t(), Zig.Module.t(), Path.t(), non_neg_integer()) :: Zig.Module.t()
Specs
parse_zig_block(binary(), keyword()) :: {:ok, [term()], rest, context, line, byte_offset} | {:error, reason, rest, context, line, byte_offset} when line: {pos_integer(), byte_offset}, byte_offset: pos_integer(), rest: binary(), reason: String.t(), context: map()
Parses the given binary
as parse_zig_block.
Returns {:ok, [token], rest, context, position, byte_offset}
or
{:error, reason, rest, context, line, byte_offset}
where position
describes the location of the parse_zig_block (start position) as {line, column_on_line}
.
Options
:byte_offset
- the byte offset for the whole binary, defaults to 0:line
- the line and the byte offset into that line, defaults to{1, byte_offset}
:context
- the initial context value. It will be converted to a map