struct

Vow::ArgDescriptor

Inherits JSON::Serializable < Struct < Value < Object

One exported argument: its name, its declared Crystal type (captured verbatim from the signature — "Int32", "Array(String)", …), and whether it's optional (has a default value, so the caller may omit it). The type string is the raw Crystal type — mapping it to a target language (TypeScript, …) happens in the codegen layer, not here, so the manifest stays a pure, target-agnostic structural IR that can't misrepresent the signature. optional defaults to false so manifests written before this field existed still deserialize.

Constructors

new(name : String, type : String, optional : Bool = false)
Source
new(*, __pull_for_json_serializable pull : JSON::PullParser)
Source

Instance methods

name
Source
optional
Source
type
Source