class Crystal::Macros::Arg

Overview

A def argument.

Defined in:

compiler/crystal/macros.cr

Instance Method Summary

Instance Method Detail

def annotation(type : TypeNode) : Annotation | NilLiteral #

Returns the last Annotation with the given type attached to this arg or NilLiteral if there are none.


[View source]
def annotations(type : TypeNode) : ArrayLiteral(Annotation) #

Returns an array of annotations with the given type attached to this arg, or an empty ArrayLiteral if there are none.


[View source]
def annotations : ArrayLiteral(Annotation) #

Returns an array of all annotations attached to this arg, or an empty ArrayLiteral if there are none.


[View source]
def default_value : ASTNode | Nop #

Returns the default value of this argument, if any.


[View source]
def internal_name : MacroId #

Returns the internal name of this argument.

For example, for def write(to file) returns file.


[View source]
def name : MacroId #

Returns the external name of this argument.

For example, for def write(to file) returns to.


[View source]
def restriction : ASTNode | Nop #

Returns the type restriction of this argument, if any.


[View source]