Class: Hecks::Bluebook::Expression::Resolver::Split

Inherits:
Struct
  • Object
show all
Defined in:
lib/hecks/bluebook/expression/resolver.rb

Overview

receiver.split("SEP") -- vendored addition, not (yet) upstream hecks (migration plan task 9): confirmed the single highest-value new finding of the real-dispatch smoke sweep -- the bus's own core Phrase value object (dispatch/lexicon/ query/command_bus.bluebook, all four storehouse-kernel files, byte-identical text) validates its four-segment shape with value.split("::").length == 4 && value.split("::").all? { |s| s.length > 0 } -- .split( matched none of this grammar's known suffixes, so it fell through to the Lookup catch-all, which split the RAW EXPRESSION TEXT on "." (not the runtime value) and crashed with TypeError: no implicit conversion of Symbol into Integer the moment String#[] was handed a Symbol segment -- meaning every command taking a Phrase was entirely undispatchable, confirmed live via Lexicon::Lexicon. Lookup/Query::Query.Run, not inferred. Produces a real Array, deliberately not a scalar -- .length/.all? compose with it below the same way they compose with any other receiver, because parse recurses on the receiver text and the existing Size node (.length/.size) already treats "whatever interpret returns" as its receiver's value, not a fixed type. Separator is taken literally between the quotes, same "no sub-grammar to recurse into" precedent MatchesRegex already set for its own /pattern/ text above.

Instance Attribute Summary collapse

Instance Attribute Details

#receiverObject

Returns the value of attribute receiver

Returns:

  • (Object)

    the current value of receiver



135
136
137
# File 'lib/hecks/bluebook/expression/resolver.rb', line 135

def receiver
  @receiver
end

#separatorObject

Returns the value of attribute separator

Returns:

  • (Object)

    the current value of separator



135
136
137
# File 'lib/hecks/bluebook/expression/resolver.rb', line 135

def separator
  @separator
end