struct

Jalopy::NodeLink

Inherits Protobuf::Message < Struct < Value < Object

Constants

FIELDS = {1 => {name: :hash, pb_type: :bytes, crystal_type: Slice(UInt8), cast_type: Slice(UInt8)?, native: true, optional: true, repeated: false, default: nil, packed: false}, 2 => {name: :name, pb_type: :string, crystal_type: String, cast_type: String?, native: true, optional: true, repeated: false, default: nil, packed: false}, 3 => {name: :tsize, pb_type: :uint64, crystal_type: UInt64, cast_type: UInt64?, native: true, optional: true, repeated: false, default: nil, packed: false}} of Int32 => HashLiteral(Symbol, ASTNode)

Constructors

new(buf : Protobuf::Buffer)
new(hash : Slice(UInt8) | Nil = nil, name : String | Nil = nil, tsize : UInt64 | Nil = nil)

Class methods

from_protobuf(io)

Instance methods

[](key : String)
hash

Generates an UInt64 hash value for this object.

This method must have the property that a == b implies a.hash == b.hash.

The hash value is used along with == by the Hash class to determine if two objects reference the same hash key.

Subclasses must not override this method. Instead, they must define hash(hasher), though usually the macro def_hash can be used to generate this method.

hash=(hash : Slice(UInt8) | Nil)
name
name=(name : String | Nil)
to_protobuf(io : IO, embedded = false)
to_protobuf
tsize
tsize=(tsize : UInt64 | Nil)