class Crystal::Macros::ArrayLiteral

Overview

An array literal.

Defined in:

compiler/crystal/macros.cr

Instance Method Summary

Instance Method Detail

def +(other : ArrayLiteral) : ArrayLiteralSource

Similar to Array#+.

def <<(value : ASTNode) : ArrayLiteralSource

Similar to Array#<<.

def [](index : NumberLiteral) : ASTNodeSource

Similar to Array#[], but returns NilLiteral on out of bounds.

def []=(index : NumberLiteral, value : ASTNode) : ASTNodeSource

Similar to Array#[]=.

def all?(&) : BoolLiteralSource

Similar to Enumerable#all?

def any?(&) : BoolLiteralSource

Similar to Enumerable#any?

def clear : ArrayLiteralSource

Similar to Array#clear

def each(&) : NilSource

Similar to Array#each

def each_with_index(&) : NilSource

def empty? : BoolLiteralSource

Similar to Array#empty?

def find(&) : ASTNode | NilLiteralSource

Similar to Enumerable#find

def first : ASTNode | NilLiteralSource

Similar to Array#first, but returns a NilLiteral if the array is empty.

def includes?(node : ASTNode) : BoolLiteralSource

def join(separator) : StringLiteralSource

Similar to Enumerable#join

def last : ASTNode | NilLiteralSource

Similar to Array#last, but returns a NilLiteral if the array is empty.

def map(&) : ArrayLiteralSource

Similar to Enumerable#map

def map_with_index(&) : ArrayLiteralSource

def of : ASTNode | NopSource

Returns the type specified at the end of the array literal, if any.

This refers to the part after brackets in [] of String.

def push(value : ASTNode) : ArrayLiteralSource

Similar to Array#push.

def reduce(memo : ASTNode, &) : ASTNodeSource

Similar to Enumerable#reduce

def reduce(&) : ASTNodeSource

Similar to Enumerable#reduce

def reject(&) : ArrayLiteralSource

Similar to Enumerable#reject

def select(&) : ArrayLiteralSource

Similar to Enumerable#select

def shuffle : ArrayLiteralSource

Similar to Array#shuffle

def size : NumberLiteralSource

Similar to Array#size

def sort : ArrayLiteralSource

Similar to Array#sort

def sort_by(&) : ArrayLiteralSource

Similar to Array#sort_by

def splat(trailing_string : StringLiteral = nil) : MacroIdSource

Returns a MacroId with all of this array's elements joined by commas.

If trailing_string is given, it will be appended to the result unless this array is empty. This lets you splat an array and optionally write a trailing comma if needed.

def type : Path | NopSource

Returns the type that receives the items of the array.

This refers to the part before brackets in MyArray{1, 2, 3}

def uniq : ArrayLiteralSource

Similar to Array#uniq

def unshift(value : ASTNode) : ArrayLiteralSource

Similar to Array#unshift.

© 2012–2021 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.2.1/Crystal/Macros/ArrayLiteral.html