Class: Regexp::Expression::Backreference::Base

Inherits:
Regexp::Expression::Base show all
Defined in:
lib/regexp_parser/expression/classes/backref.rb,
lib/regexp_parser/expression/methods/match_length.rb

Direct Known Subclasses

Name, Number

Instance Attribute Summary collapse

Attributes inherited from Regexp::Expression::Base

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

Instance Method Summary collapse

Methods inherited from Regexp::Expression::Base

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

Constructor Details

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

Instance Attribute Details

#referenced_expressionObject

Returns the value of attribute referenced_expression.



4
5
6
# File 'lib/regexp_parser/expression/classes/backref.rb', line 4

def referenced_expression
  @referenced_expression
end

Instance Method Details

#match_lengthObject



151
152
153
154
155
156
# File 'lib/regexp_parser/expression/methods/match_length.rb', line 151

def match_length
  if referenced_expression.nil?
    raise ArgumentError, 'Missing referenced_expression - not parsed?'
  end
  referenced_expression.unquantified_clone.match_length
end