Class: VirtualBox::COM::AbstractEnum
- Inherits:
-
Object
- Object
- VirtualBox::COM::AbstractEnum
- Extended by:
- Enumerable
- Defined in:
- lib/virtualbox/com/abstract_enum.rb
Overview
Represents a C enum type. Provides functionality to easily convert an int value to its proper symbol within the enum.
Direct Known Subclasses
Interface::Version_3_1_X::AudioControllerType, Interface::Version_3_1_X::AudioDriverType, Interface::Version_3_1_X::BIOSBootMenuMode, Interface::Version_3_1_X::ClipboardMode, Interface::Version_3_1_X::CpuPropertyType, Interface::Version_3_1_X::DeviceType, Interface::Version_3_1_X::FirmwareType, Interface::Version_3_1_X::HWVirtExPropertyType, Interface::Version_3_1_X::HostNetworkInterfaceMediumType, Interface::Version_3_1_X::HostNetworkInterfaceStatus, Interface::Version_3_1_X::HostNetworkInterfaceType, Interface::Version_3_1_X::MachineState, Interface::Version_3_1_X::MediumState, Interface::Version_3_1_X::MediumType, Interface::Version_3_1_X::MediumVariant, Interface::Version_3_1_X::NetworkAdapterType, Interface::Version_3_1_X::NetworkAttachmentType, Interface::Version_3_1_X::PortMode, Interface::Version_3_1_X::SessionState, Interface::Version_3_1_X::SessionType, Interface::Version_3_1_X::StorageBus, Interface::Version_3_1_X::StorageControllerType, Interface::Version_3_1_X::USBDeviceFilterAction, Interface::Version_3_1_X::USBDeviceState, Interface::Version_3_1_X::VRDPAuthType, Interface::Version_3_1_X::VirtualSystemDescriptionType, Interface::Version_3_1_X::VirtualSystemDescriptionValueType, Interface::Version_3_2_X::AccessMode, Interface::Version_3_2_X::AudioControllerType, Interface::Version_3_2_X::AudioDriverType, Interface::Version_3_2_X::BIOSBootMenuMode, Interface::Version_3_2_X::ClipboardMode, Interface::Version_3_2_X::CpuPropertyType, Interface::Version_3_2_X::DeviceType, Interface::Version_3_2_X::FirmwareType, Interface::Version_3_2_X::HWVirtExPropertyType, Interface::Version_3_2_X::HostNetworkInterfaceMediumType, Interface::Version_3_2_X::HostNetworkInterfaceStatus, Interface::Version_3_2_X::HostNetworkInterfaceType, Interface::Version_3_2_X::KeyboardHidType, Interface::Version_3_2_X::MachineState, Interface::Version_3_2_X::MediumState, Interface::Version_3_2_X::MediumType, Interface::Version_3_2_X::MediumVariant, Interface::Version_3_2_X::NATAliasMode, Interface::Version_3_2_X::NATProtocol, Interface::Version_3_2_X::NetworkAdapterType, Interface::Version_3_2_X::NetworkAttachmentType, Interface::Version_3_2_X::PointingHidType, Interface::Version_3_2_X::PortMode, Interface::Version_3_2_X::SessionState, Interface::Version_3_2_X::SessionType, Interface::Version_3_2_X::StorageBus, Interface::Version_3_2_X::StorageControllerType, Interface::Version_3_2_X::USBDeviceFilterAction, Interface::Version_3_2_X::USBDeviceState, Interface::Version_3_2_X::VRDPAuthType, Interface::Version_3_2_X::VirtualSystemDescriptionType, Interface::Version_3_2_X::VirtualSystemDescriptionValueType, Interface::Version_4_0_X::AccessMode, Interface::Version_4_0_X::AudioControllerType, Interface::Version_4_0_X::AudioDriverType, Interface::Version_4_0_X::AuthType, Interface::Version_4_0_X::BIOSBootMenuMode, Interface::Version_4_0_X::CleanupMode, Interface::Version_4_0_X::ClipboardMode, Interface::Version_4_0_X::CpuPropertyType, Interface::Version_4_0_X::DeviceType, Interface::Version_4_0_X::FaultToleranceState, Interface::Version_4_0_X::FirmwareType, Interface::Version_4_0_X::HWVirtExPropertyType, Interface::Version_4_0_X::HostNetworkInterfaceMediumType, Interface::Version_4_0_X::HostNetworkInterfaceStatus, Interface::Version_4_0_X::HostNetworkInterfaceType, Interface::Version_4_0_X::KeyboardHidType, Interface::Version_4_0_X::LockType, Interface::Version_4_0_X::MachineState, Interface::Version_4_0_X::MediumState, Interface::Version_4_0_X::MediumType, Interface::Version_4_0_X::MediumVariant, Interface::Version_4_0_X::NATAliasMode, Interface::Version_4_0_X::NATProtocol, Interface::Version_4_0_X::NetworkAdapterType, Interface::Version_4_0_X::NetworkAttachmentType, Interface::Version_4_0_X::PointingHidType, Interface::Version_4_0_X::PortMode, Interface::Version_4_0_X::SessionState, Interface::Version_4_0_X::SessionType, Interface::Version_4_0_X::StorageBus, Interface::Version_4_0_X::StorageControllerType, Interface::Version_4_0_X::USBDeviceFilterAction, Interface::Version_4_0_X::USBDeviceState, Interface::Version_4_0_X::VirtualSystemDescriptionType, Interface::Version_4_0_X::VirtualSystemDescriptionValueType
Class Method Summary collapse
-
.[](key) ⇒ Object
Returns the symbol associatd with the given key.
-
.each ⇒ Object
Iterate over the enum, yielding each item to a block.
-
.index(key) ⇒ Object
Returns the index associated with a value.
-
.map(value = nil) ⇒ Object
Defines the mapping of int => symbol for the given Enum.
-
.reset! ⇒ Object
Provided mostly for testing purposes only, but resets the mapping to nil.
Class Method Details
.[](key) ⇒ Object
Returns the symbol associatd with the given key
19 20 21 |
# File 'lib/virtualbox/com/abstract_enum.rb', line 19 def [](key) @map[key] end |
.each ⇒ Object
Iterate over the enum, yielding each item to a block.
29 30 31 32 33 |
# File 'lib/virtualbox/com/abstract_enum.rb', line 29 def each @map.each do |key| yield key end end |
.index(key) ⇒ Object
Returns the index associated with a value
24 25 26 |
# File 'lib/virtualbox/com/abstract_enum.rb', line 24 def index(key) @map.index(key) end |
.map(value = nil) ⇒ Object
Defines the mapping of int => symbol for the given Enum. The parameter to this can be an Array or Hash or anything which can be indexed with ‘[]` and an integer and returns a value of some sort. If value is left nil, it will return the current mapping
13 14 15 16 |
# File 'lib/virtualbox/com/abstract_enum.rb', line 13 def map(value = nil) @map = value if value @map end |
.reset! ⇒ Object
Provided mostly for testing purposes only, but resets the mapping to nil.
37 38 39 |
# File 'lib/virtualbox/com/abstract_enum.rb', line 37 def reset! @map = nil end |