Class: RubyToBlock::Block::MotionGoToCharacter

Inherits:
CharacterMethodCall show all
Defined in:
app/models/concerns/ruby_to_block/block/motion_go_to_character.rb

Constant Summary

Constants included from CharacterOperation

CharacterOperation::CHAR_NAME_RE, CharacterOperation::CHAR_RE

Constants inherited from Base

Base::STRING_RE

Instance Attribute Summary

Attributes included from CharacterOperation

#character

Attributes inherited from Base

#fields, #parent, #prev_sibling, #sibling, #statements, #values

Class Method Summary collapse

Methods inherited from CharacterMethodCall

add_character_method_call_block

Methods inherited from Base

#[], #add_statement, #add_value, blocknize, indent?, #indent_level, inherited, #initialize, inline?, #inline?, #null?, priority, process_else, process_end, process_value_string, regexp, statement?, #to_xml, type, #type, value?

Constructor Details

This class inherits a constructor from RubyToBlock::Block::Base

Class Method Details

.process_match_data(md, context) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/models/concerns/ruby_to_block/block/motion_go_to_character.rb', line 8

def self.process_match_data(md, context)
  md2 = regexp.match(md[type])

  name = md2[2]
  name.strip!
  c = context.characters[name]
  return false unless c

  block = new(fields: { CHAR: name })
  _, context.current_block =
    *add_child_or_create_character_new_block(context, md2[1], block)

  true
end