Sha256: 5f9ebc3e92ebb14ee2079633278ba4f9973f8d20a9d295237dbb63c72ca5bb2a

Contents?: true

Size: 1.36 KB

Versions: 10

Compression:

Stored size: 1.36 KB

Contents

require "singleton"

module IsoDoc
  module XrefGen
    module Anchor
      class Seen_Anchor
        include Singleton

        def initialize
          @seen = {}
        end

        def seen(elem)
          @seen.has_key?(elem)
        end

        def add(elem)
          @seen[elem] = true
        end
      end

      def initialize
        @anchors = {}
      end

      def get_anchors
        @anchors
      end

      def anchor_struct_label(lbl, elem)
        case elem
        when @labels["appendix"] then l10n("#{elem} #{lbl}")
        else
          lbl.to_s
        end
      end

      def anchor_struct_xref(lbl, elem)
        l10n("#{elem} #{anchor_struct_value(lbl, elem)}")
      end

      def anchor_struct_value(lbl, elem)
        case elem
        when @labels["formula"], @labels["inequality"] then "(#{lbl})"
        else
          lbl
        end
      end

      def anchor_struct(lbl, container, elem, type, unnumb = false)
        ret = {}
        ret[:label] = unnumb == "true" ? nil : anchor_struct_label(lbl, elem)
        ret[:xref] = anchor_struct_xref(unnumb == "true" ? "(??)" : lbl, elem)
        ret[:xref].gsub!(/ $/, "")
        ret[:container] = @klass.get_clause_id(container) unless container.nil?
        ret[:type] = type
        ret[:elem] = elem
        ret[:value] = anchor_struct_value(lbl, elem)
        ret
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
isodoc-2.0.8.2 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.8.1 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.8 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.7 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.6.1 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.6 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.5.3 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.5.2 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.5.1 lib/isodoc/xref/xref_anchor.rb
isodoc-2.0.5 lib/isodoc/xref/xref_anchor.rb