class RelatonIsoBib::Ics
Iso ICS classificator.
Public Class Methods
new(code = nil, field: nil, group: nil, subgroup: nil)
click to toggle source
@param code [String, NilClass] @param field [Integer, NilClass] @param group [Integer, NilClass] @param subgroup [Integer, NilClass]
Calls superclass method
# File lib/relaton_iso_bib/ics.rb, line 8 def initialize(code = nil, field: nil, group: nil, subgroup: nil) unless code || field raise ArgumentError, "wrong arguments (should be string or { fieldcode: [String] }" end field, group, subgroup = code.split "." if code super fieldcode: field, groupcode: group, subgroupcode: subgroup end
Public Instance Methods
to_asciibib(prefix = "", count = 1)
click to toggle source
@param prefix [String] @param count [Integer] number of ICS @return [String]
# File lib/relaton_iso_bib/ics.rb, line 37 def to_asciibib(prefix = "", count = 1) pref = prefix.empty? ? prefix : prefix + "." pref += "ics" out = count > 1 ? "#{pref}::\n" : "" out += "#{pref}.code:: #{code}\n" out += "#{pref}.description:: #{description}\n" out end
to_hash()
click to toggle source
@return [Hash]
# File lib/relaton_iso_bib/ics.rb, line 27 def to_hash hash = {} hash["code"] = code if code hash["text"] = description if description hash end
to_xml(builder)
click to toggle source
@param builder [Nokogiri::XML::Builder]
# File lib/relaton_iso_bib/ics.rb, line 19 def to_xml(builder) builder.ics do builder.code code builder.text_ description end end