Class: ToSpreadsheet::Rule::Base
- Inherits:
-
Object
- Object
- ToSpreadsheet::Rule::Base
- Includes:
- Selectors
- Defined in:
- lib/to_spreadsheet/rule/base.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
-
#selector_query ⇒ Object
readonly
Returns the value of attribute selector_query.
-
#selector_type ⇒ Object
readonly
Returns the value of attribute selector_type.
Instance Method Summary collapse
- #applies_to?(context, xml_or_xls_node) ⇒ Boolean
-
#initialize(selector_type, selector_query, options) ⇒ Base
constructor
A new instance of Base.
- #to_s ⇒ Object
- #type ⇒ Object
Methods included from Selectors
#column_number_match?, #css_match, #css_match?, #each_cell, #query_match?, #range_contains?, #range_match, #row_number_match?
Constructor Details
#initialize(selector_type, selector_query, options) ⇒ Base
Returns a new instance of Base.
8 9 10 11 12 |
# File 'lib/to_spreadsheet/rule/base.rb', line 8 def initialize(selector_type, selector_query, ) @selector_type = selector_type @selector_query = selector_query @options = end |
Instance Attribute Details
#options ⇒ Object (readonly)
Returns the value of attribute options.
6 7 8 |
# File 'lib/to_spreadsheet/rule/base.rb', line 6 def @options end |
#selector_query ⇒ Object (readonly)
Returns the value of attribute selector_query.
6 7 8 |
# File 'lib/to_spreadsheet/rule/base.rb', line 6 def selector_query @selector_query end |
#selector_type ⇒ Object (readonly)
Returns the value of attribute selector_type.
6 7 8 |
# File 'lib/to_spreadsheet/rule/base.rb', line 6 def selector_type @selector_type end |
Instance Method Details
#applies_to?(context, xml_or_xls_node) ⇒ Boolean
14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/to_spreadsheet/rule/base.rb', line 14 def applies_to?(context, xml_or_xls_node) return true if !selector_type node, entity = context.xml_node_and_xls_entity(xml_or_xls_node) sheet = entity.is_a?(::Axlsx::Workbook) ? entity : (entity.respond_to?(:workbook) ? entity.workbook : entity.worksheet.workbook) doc = context.to_xml_node(sheet) query_match?( selector_type: selector_type, selector_query: selector_query, xml_document: doc, xml_node: node, xls_worksheet: sheet, xls_entity: entity ) end |
#to_s ⇒ Object
33 34 35 |
# File 'lib/to_spreadsheet/rule/base.rb', line 33 def to_s "Rule [#{type}, #{selector_type}, #{selector_query}, #{}" end |
#type ⇒ Object
29 30 31 |
# File 'lib/to_spreadsheet/rule/base.rb', line 29 def type self.class.name.demodulize.underscore.to_sym end |