Class: Regexp::Expression::SequenceOperation

Inherits:
Subexpression show all
Defined in:
lib/regexp_parser/expression/sequence_operation.rb

Overview

abstract class

Direct Known Subclasses

Alternation, CharacterSet::Intersection

Instance Attribute Summary

Attributes inherited from Subexpression

#expressions

Attributes inherited from Base

#conditional_level, #level, #nesting_level, #options, #quantifier, #set_level, #text, #token, #type

Instance Method Summary collapse

Methods inherited from Subexpression

#dig, #each_expression, #flat_map, #initialize, #initialize_copy, #inner_match_length, #match_length, #strfregexp_tree, #te, #to_h, #traverse

Methods inherited from Base

#ascii_classes?, #attributes, #base_length, #case_insensitive?, #coded_offset, #default_classes?, #free_spacing?, #full_length, #greedy?, #initialize, #initialize_copy, #is?, #match, #match?, #multiline?, #offset, #one_of?, #possessive?, #quantified?, #quantifier_affix, #quantify, #quantity, #reluctant?, #repetitions, #strfregexp, #terminal?, #to_re, #type?, #unicode_classes?, #unquantified_clone

Constructor Details

This class inherits a constructor from Regexp::Expression::Subexpression

Instance Method Details

#<<(exp) ⇒ Object



13
14
15
# File 'lib/regexp_parser/expression/sequence_operation.rb', line 13

def <<(exp)
  expressions.last << exp
end

#add_sequence(active_opts = {}) ⇒ Object



17
18
19
# File 'lib/regexp_parser/expression/sequence_operation.rb', line 17

def add_sequence(active_opts = {})
  self.class::OPERAND.add_to(self, {}, active_opts)
end

#starts_atObject Also known as: ts



8
9
10
# File 'lib/regexp_parser/expression/sequence_operation.rb', line 8

def starts_at
  expressions.first.starts_at
end

#to_s(format = :full) ⇒ Object



21
22
23
# File 'lib/regexp_parser/expression/sequence_operation.rb', line 21

def to_s(format = :full)
  sequences.map { |e| e.to_s(format) }.join(text)
end