Sha256: dbdefed8ddd0c93026bc4a10509e6ad15ac29065222d15bc294a78cb419a16d5

Contents?: true

Size: 814 Bytes

Versions: 69

Compression:

Stored size: 814 Bytes

Contents

# -*- coding: utf-8 -*-
module RubyToBlock
  module Block
    class OperatorsCompare < Value
      blocknize '^\s*(\S+?)\s*(<|<=|==|>=|>)\s*(\S+?)\s*$',
                value: true, inline: true

      OPERATOR_TO_TYPE = {
        '<' => "#{type}_lt",
        '<=' => "#{type}_lte",
        '==' => "#{type}_eq",
        '>=' => "#{type}_gte",
        '>' => "#{type}_gt",
      }

      attr_accessor :compare_type

      def self.process_match_data(md, context)
        md2 = regexp.match(md[type])

        block = new
        context.add_value(block)

        process_value_string(context, block, md2[1], :A)
        block.compare_type = md2[2]
        process_value_string(context, block, md2[3], :B)

        true
      end

      def type
        OPERATOR_TO_TYPE[@compare_type]
      end
    end
  end
end

Version data entries

69 entries across 69 versions & 1 rubygems

Version Path
smalruby-editor-0.4.1-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.4.2-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.4.2 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.4.1 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.4.0-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.4.0 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.5-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.5 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.4-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.4 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.3-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.3 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.2-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.2 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.1-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.1 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.0-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.3.0 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.2.7-x86-mingw32 app/models/concerns/ruby_to_block/block/operators_compare.rb
smalruby-editor-0.2.7 app/models/concerns/ruby_to_block/block/operators_compare.rb