Class Kwartz::TextConverter
In: kwartz/converter.rb
Parent: Converter

convert presentation data (html) into a list of Statement. notice that TextConverter class hanlde html file as text format, not html format.

Methods

Attributes

linenum  [R] 
rest  [R] 

Public Class methods

[Source]

# File kwartz/converter.rb, line 984
    def initialize(handler, properties={})
      super
      @dattr = properties.fetch(:dattr, Config::PROPERTY_DATTR)    # default: 'kw:d'
    end

Protected Class methods

[Source]

# File kwartz/converter.rb, line 1034
    def self.fetch_pattern=(regexp)
      @@fetch_pattern = regexp
    end

Public Instance methods

[Source]

# File kwartz/converter.rb, line 1005
    def convert(input, filename='')
      reset(input, filename)
      stmt_list = []
      _convert(stmt_list)
      ruleset = @handler.get_ruleset('#DOCUMENT')
      if ruleset
        stmt_list2 = []
        elem_info = nil
        r = ruleset
        @handler.expand_statements(r.before, stmt_list2, elem_info) if r.before
        if r.logic
          @handler.expand_statements(r.logic, stmt_list2, elem_info)
        else
          stmt_list2.concat(stmt_list)
        end
        @handler.expand_statements(r.after,  stmt_list2, elem_info) if r.after
        stmt_list = stmt_list2
      end
      return stmt_list
    end

Protected Instance methods

[Source]

# File kwartz/converter.rb, line 1039
    def match_ruleset(taginfo, attr_info)
      idname = attr_info['id']
      return true if idname && @handler.get_ruleset("#"+idname)
      classname = attr_info['class']
      return true if classname && @handler.get_ruleset("."+classname)
      return @handler.get_ruleset(taginfo.tagname) ? true : false
    end

called from convert() and initialize converter object

[Source]

# File kwartz/converter.rb, line 991
    def reset(input, filename)
      @scanner = StringScanner.new(input)
      @filename = filename
      @handler.filename = filename
      @rest = nil
      @linenum = 1
      @linenum_delta = 0
    end

[Validate]