Sha256: b803784615b8459b35c55cb29f3b072bad53a9793490c6db3fbd6110af489a06

Contents?: true

Size: 791 Bytes

Versions: 27

Compression:

Stored size: 791 Bytes

Contents

module BasicBlock
  class Index
    #
    # @param [Array<BasicBlock::TextElement] primary
    # @param [Hash] args
    # @option args [String, nil] :to
    # @option args [Array<BasicBlock::TextElement>, nil] :secondary
    # @option args [Array<BasicBlock::TextElement>, nil] :tertiary
    #
    def initialize(primary:, **args)
      @to = args[:to]
      @primary = primary
      @secondary = args[:secondary]
      @tertiary = args[:tertiary]
    end

    # @param [Nokogiri::XML::Builder] builder
    def to_xml(builder) # rubocop:disable Metrics/CyclomaticComplexity
      idx = builder.index do |b|
        @primary.each { |p| p.to_xml b }
        @secondary&.each { |s| s.to_xml b }
        @tertiary&.each { |t| t.to_xml b }
      end
      idx[:to] = @to if @to
    end
  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
relaton-iec-1.20.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.19.1 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.19.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.18.1 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.18.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.17.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.16.4 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.16.3 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.16.2 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.16.1 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.16.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.14.4 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.14.3 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.14.2 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.14.1 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.14.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.13.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.12.0 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.11.4 lib/relaton_iec/basic_block/index.rb
relaton-iec-1.11.3 lib/relaton_iec/basic_block/index.rb