class MWDictionaryAPI::Parsers::EntryParser

Public Instance Methods

add_dumy_nodes(nodes) click to toggle source
# File lib/mw_dictionary_api/parsers/entry_parser.rb, line 99
def add_dumy_nodes(nodes)
  temp = []
  previous_sense_number = nil
  nodes.each do |node|
    if temp.count == 0
      if node.name != 'sn'
        temp << OpenStruct.new(name: 'sn', content: '0')
        previous_sense_number = '0'
      else
        previous_sense_number = node.content
      end
      temp << node
    else
      if temp[-1].name == 'sn'
        if node.name == 'sn'
          temp << OpenStruct.new(name: 'dt', content: '')
          previous_sense_number = node.content
        end
        temp << node
      else
        if node.name == 'dt'
          temp << OpenStruct.new(name: 'sn', content: previous_sense_number)
        else
          previous_sense_number = node.content
        end
        temp << node
      end
    end
  end
  temp
end
parse_entity(data, tag) click to toggle source
# File lib/mw_dictionary_api/parsers/entry_parser.rb, line 95
def parse_entity(data, tag)
  data.at_css(tag).content if data.at_css(tag)
end
parser_options(opts) click to toggle source
# File lib/mw_dictionary_api/parsers/entry_parser.rb, line 91
def parser_options(opts)
  { api_type: opts[:api_type], response_format: opts[:response_format] }
end