Sha256: bbcd08a8d166fed425603c50a7b31c5b75888c93874b02ae506ce5f2b4e3373d

Contents?: true

Size: 607 Bytes

Versions: 1

Compression:

Stored size: 607 Bytes

Contents

# frozen_string_literal: true

class Solid::Result
  class Data
    attr_reader :kind, :type, :value

    def initialize(kind, type, value)
      @kind = kind
      @type = type.to_sym
      @value = value
    end

    def to_h
      { kind: kind, type: type, value: value }
    end

    def to_a
      [kind, type, value]
    end

    def inspect
      format(
        '#<%<class_name>s kind=%<kind>p type=%<type>p value=%<value>p>',
        class_name: self.class.name, kind: kind, type: type, value: value
      )
    end

    alias to_ary to_a
    alias to_hash to_h
  end

  private_constant :Data
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
solid-result-2.0.0 lib/solid/result/data.rb