PtcRunner.SubAgent.Signature.ParserHelpers (PtcRunner v0.9.0)

Copy Markdown View Source

Helper functions for signature parser AST building.

Summary

Functions

Build full signature from parameters and return type.

Build a map field (key :type).

Build a map type wrapper.

Build a parameter (name :type).

Build shorthand signature (no input, just output).

Build a type from primitive type keyword and optional suffix.

Concatenate identifier parts (first char + optional rest).

Flatten lists from repeat parsing.

Build a list type wrapper.

Functions

build_full_signature(list)

Build full signature from parameters and return type.

When optional(parsec(:parameters_list)) doesn't match, we get just [return_type]. When it does match, we get [params, return_type].

build_map_field(list)

Build a map field (key :type).

build_map_type(list)

Build a map type wrapper.

build_parameter(list)

Build a parameter (name :type).

build_shorthand_signature(list)

Build shorthand signature (no input, just output).

build_type(list)

Build a type from primitive type keyword and optional suffix.

concat_identifier(list)

Concatenate identifier parts (first char + optional rest).

flatten_list(item)

Flatten lists from repeat parsing.

When parsing with repeat(), we get [first_result, [rest_result_1, rest_result_2, ...]] This returns [first_result, rest_result_1, rest_result_2, ...]

wrap_list(list)

Build a list type wrapper.