Sha256: 5d0b955ad619565bf2139c56c8adfbc5424d737843de1e1eaeebeb94242185b5

Contents?: true

Size: 781 Bytes

Versions: 35

Compression:

Stored size: 781 Bytes

Contents

# -*- coding: utf-8 -*-
module RubyToBlock
  module Block
    class HardwareRgbLedOn < CharacterMethodCall
      # rubocop:disable LineLength
      blocknize '^\s*' + CHAR_RE + 'rgb_led_(anode|cathode)\("(D[39])"\).on\(color:\s*\[(\d+),\s*(\d+),\s*(\d+)\]\)\s*$',
                statement: true
      # rubocop:enable LineLength

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

        color = [md2[4], md2[5], md2[6]].map(&:to_i)
        return false if color.any? { |c| c < 0 || c > 255 }
        color_code = '#' + color.map { |c| sprintf('%02x', c) }.join
        block = new(fields: { AC: md2[2], PIN: md2[3], COLOUR: color_code })

        add_character_method_call_block(context, md2[1], block)
        true
      end
    end
  end
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
smalruby-editor-0.1.24-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.24 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.23-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.23 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.22-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.22 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.21-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.21 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.20-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.20 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.19-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.19 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.18-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.18 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.17-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.17 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.16-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.16 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.15-x86-mingw32 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb
smalruby-editor-0.1.15 app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb