Sha256: c55a578d9510d50144400b5c7980b5e54b162441423c68d16bdbf4cdab939d13

Contents?: true

Size: 743 Bytes

Versions: 5

Compression:

Stored size: 743 Bytes

Contents

class CGen::Generator::CvListDoubleItem < CGen::Generator::BasicGenerator

  def initialize(param, data, lang)
    super(param, data, lang)
  end

  def generate
    value = get_value(param)
    unless value.is_a?(Array)
      value = Array[value]
    end
    value.collect do |elem|
      instance = self
      result = Either.chain do
        bind -> { elem.is_a?(Hash) }
        bind -> { elem.has_key?('item_0') && elem.has_key?('item_1') }
        bind -> {
          instance.get_cv_list_double_item(elem['item_0'], elem['item_1'])
        }
      end
      result.success? ? result.fetch : ''
    end.join("\n")
  end

  protected

  def get_cv_list_double_item(item_0, item_1)
    "\\cvlistdoubleitem{#{item_0}}{#{item_1}}"
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
curriculum-generator-1.0.4 lib/cgen/generator/cv_list_double_item.rb
curriculum-generator-1.0.3 lib/cgen/generator/cv_list_double_item.rb
curriculum-generator-1.0.2 lib/cgen/generator/cv_list_double_item.rb
curriculum-generator-1.0.1 lib/cgen/generator/cv_list_double_item.rb
curriculum-generator-1.0.0 lib/cgen/generator/cv_list_double_item.rb