class Crystal::Macros::TupleLiteral
Overview
A tuple literal.
Its macro methods are nearly the same as ArrayLiteral
.
Defined in:
compiler/crystal/macros.crInstance Method Summary
-
#+(other : TupleLiteral) : TupleLiteral
Similar to
Tuple#+
. -
#-(other : TupleLiteral) : TupleLiteral
Similar to
Array#-
. -
#<<(value : ASTNode) : TupleLiteral
Similar to
Array#<<
. -
#[](index : NumberLiteral) : ASTNode
Similar to
Tuple#[]
, but returnsNilLiteral
on out of bounds. -
#[](index : RangeLiteral) : TupleLiteral(ASTNode)
Similar to
Tuple#[]
. -
#[]=(index : NumberLiteral, value : ASTNode) : ASTNode
Similar to
Array#[]=
. -
#all?(&) : BoolLiteral
Similar to
Enumerable#all?
-
#any?(&) : BoolLiteral
Similar to
Enumerable#any?
-
#each(&) : Nil
Similar to
Tuple#each
-
#each_with_index(&) : Nil
Similar to
Enumerable#each_with_index
-
#empty? : BoolLiteral
Similar to
Tuple#empty?
-
#find(&) : ASTNode | NilLiteral
Similar to
Enumerable#find
-
#first : ASTNode | NilLiteral
Similar to
Tuple#first
, but returns aNilLiteral
if the tuple is empty. -
#includes?(node : ASTNode) : BoolLiteral
Similar to
Enumerable#includes?(obj)
. -
#join(separator) : StringLiteral
Similar to
Enumerable#join
-
#last : ASTNode | NilLiteral
Similar to
Tuple#last
, but returns aNilLiteral
if the tuple is empty. -
#map(&) : TupleLiteral
Similar to
Enumerable#map
-
#map_with_index(&) : TupleLiteral
Similar to
Enumerable#map_with_index
-
#push(value : ASTNode) : TupleLiteral
Similar to
Array#push
. -
#reduce(memo : ASTNode, &) : ASTNode
Similar to
Enumerable#reduce
-
#reduce(&) : ASTNode
Similar to
Enumerable#reduce
-
#reject(&) : TupleLiteral
Similar to
Enumerable#reject
-
#select(&) : TupleLiteral
Similar to
Enumerable#select
-
#shuffle : TupleLiteral
Similar to
Array#shuffle
-
#size : NumberLiteral
Similar to
Tuple#size
-
#sort : TupleLiteral
Similar to
Array#sort
-
#sort_by(&) : TupleLiteral
Similar to
Array#sort_by
-
#splat(trailing_string : StringLiteral = nil) : MacroId
Returns a
MacroId
with all of this tuple's elements joined by commas. -
#uniq : TupleLiteral
Similar to
Array#uniq
-
#unshift(value : ASTNode) : TupleLiteral
Similar to
Array#unshift
.
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
Similar to Tuple#[]
, but returns NilLiteral
on out of bounds.
Similar to Tuple#first
, but returns a NilLiteral
if the tuple is empty.
Similar to Tuple#last
, but returns a NilLiteral
if the tuple is empty.
Returns a MacroId
with all of this tuple's elements joined
by commas.
If trailing_string is given, it will be appended to the result unless this tuple is empty. This lets you splat a tuple and optionally write a trailing comma if needed.