Sha256: b35be5d148012372ac43fc83a8833d9cca1e07a893a30b73b8cdc1eb6d1e86af

Contents?: true

Size: 926 Bytes

Versions: 13

Compression:

Stored size: 926 Bytes

Contents

# encoding: UTF-8

# Copyright 2012 Twitter, Inc
# http://www.apache.org/licenses/LICENSE-2.0

module TwitterCldr
  module Transforms
    module Transforms

      class TransformPair
        attr_reader :filter, :transform

        def initialize(filter, transform)
          @filter = filter
          @transform = transform
        end

        def has_transform?
          transform && !transform.empty?
        end

        def has_filter?
          filter && !filter.empty?
        end

        def to_rule_set
          @rule_set ||= begin
            rule_set = Transformer.get(transform)

            if has_filter?
              rule_set.clone_with_replacement_filter(filter_rule)
            else
              rule_set
            end
          end
        end

        private

        def filter_rule
          @filter_rule ||= Filters::FilterRule.parse(filter, nil, nil)
        end
      end

    end
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
metanorma-cli-1.3.4 gems/ruby/2.6.0/gems/twitter_cldr-4.4.5/lib/twitter_cldr/transforms/transforms/transform_pair.rb
metanorma-cli-1.3.3.1 gems/ruby/2.6.0/gems/twitter_cldr-4.4.5/lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.4.5 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.4.4 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.4.3 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.4.2 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.4.1 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.4.0 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.3.1 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.3.0 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.2.0 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.1.0 lib/twitter_cldr/transforms/transforms/transform_pair.rb
twitter_cldr-4.0.0 lib/twitter_cldr/transforms/transforms/transform_pair.rb