class
Crystal::Macros::Arg
Overview
A def argument.
Defined in:
compiler/crystal/macros.crInstance Method Summary
-
#annotation(type : TypeNode) : Annotation | NilLiteral
Returns the last
Annotationwith the giventypeattached to this arg orNilLiteralif there are none. -
#annotations(type : TypeNode) : ArrayLiteral(Annotation)
Returns an array of annotations with the given
typeattached to this arg, or an emptyArrayLiteralif there are none. -
#annotations : ArrayLiteral(Annotation)
Returns an array of all annotations attached to this arg, or an empty
ArrayLiteralif there are none. -
#default_value : ASTNode | Nop
Returns the default value of this argument, if any.
-
#internal_name : MacroId
Returns the internal name of this argument.
-
#name : MacroId
Returns the external name of this argument.
-
#restriction : ASTNode | Nop
Returns the type restriction of this argument, if any.
Instance methods inherited from class Crystal::Macros::ASTNode
!=(other : ASTNode) : BoolLiteral
!=,
==(other : ASTNode) : BoolLiteral
==,
class_name : StringLiteral
class_name,
column_number : StringLiteral | NilLiteral
column_number,
doc : StringLiteral
doc,
doc_comment : MacroId
doc_comment,
end_column_number : StringLiteral | NilLiteral
end_column_number,
end_line_number : StringLiteral | NilLiteral
end_line_number,
filename : StringLiteral | NilLiteral
filename,
id : MacroId
id,
is_a?(type : TypeNode) : BoolLiteral
is_a?,
line_number : StringLiteral | NilLiteral
line_number,
nil? : BoolLiteral
nil?,
raise(message) : NoReturn
raise,
stringify : StringLiteral
stringify,
symbolize : SymbolLiteral
symbolize,
warning(message : StringLiteral) : NilLiteral
warning
Instance Method Detail
Returns the last Annotation with the given type
attached to this arg or NilLiteral if there are none.
Returns an array of annotations with the given type
attached to this arg, or an empty ArrayLiteral if there are none.
Returns an array of all annotations attached to this
arg, or an empty ArrayLiteral if there are none.
Returns the internal name of this argument.
For example, for def write(to file) returns file.
Returns the external name of this argument.
For example, for def write(to file) returns to.