class Sirens::ObjectBrowserModel::InstanceVariable

Attributes

key[R]
value[R]

Public Class Methods

new(key:, value:) click to toggle source
# File lib/sirens/models/object_browser_model.rb, line 90
def initialize(key:, value:)
    @key = key
    @value = value
end

Public Instance Methods

display_string() click to toggle source
# File lib/sirens/models/object_browser_model.rb, line 101
def display_string()
    return value_display_string if key.nil?

    "#{key_display_string} = #{value_display_string}"
end
icon() click to toggle source
# File lib/sirens/models/object_browser_model.rb, line 97
def icon()
    Icons.icon_for(@value)
end
key_display_string() click to toggle source
# File lib/sirens/models/object_browser_model.rb, line 107
def key_display_string()
    if key.kind_of?(Numeric)
        "[#{key}]"
    else
        key.to_s
    end
end
value_display_string() click to toggle source
# File lib/sirens/models/object_browser_model.rb, line 115
def value_display_string()
    return "an Array(#{value.size})" if value.kind_of?(Array)
    return 'a Hash' if value.kind_of?(Hash)

    string = value.to_s

    if string.start_with?('#<')
        "a " + value.class.name
    else
        value.inspect
    end
end