class Immutable::Vector::Trie(T)

Included Modules

Defined in:

immutable/vector/trie.cr

Constant Summary

BITS_PER_LEVEL = 5_u32
BLOCK_SIZE = (2 ** BITS_PER_LEVEL).to_u32
INDEX_MASK = BLOCK_SIZE - 1

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.new(children : Array(Immutable::Vector::Trie(T)), levels : Int32, owner : UInt64? = nil) #

[View source]
def self.new(values : Array(T), owner : UInt64? = nil) #

[View source]

Class Method Detail

def self.empty(owner : UInt64? = nil) #

[View source]
def self.from(elems : Array(T), owner : UInt64) #

[View source]
def self.from(elems : Array(T)) #

[View source]

Instance Method Detail

def at(index : Int, &block) #

[View source]
def clear_owner! #

[View source]
def each(&block) #

[View source]
def each #

[View source]
def empty? #

[View source]
def get(index : Int) #

[View source]
def inspect #

[View source]
def last #

[View source]
def last_leaf #

[View source]
def leaf? #

[View source]
def levels #

[View source]
def pop_leaf(from : UInt64? = nil) : Immutable::Vector::Trie(T) #

[View source]
def pop_leaf!(from : UInt64) : Immutable::Vector::Trie(T) #

[View source]
def push_leaf(leaf : Array(T), from : UInt64? = nil) : Immutable::Vector::Trie(T) #

[View source]
def push_leaf!(leaf : Array(T), from : UInt64) : Immutable::Vector::Trie(T) #

[View source]
def size #

[View source]
def update(index : Int, value : T) : Immutable::Vector::Trie(T) #

[View source]
def update!(index : Int, value : T, from : UInt64) : Immutable::Vector::Trie(T) #

[View source]