Class CIM::Type
In: lib/cim/type.rb
Parent: Object

Type represents a CIM basic type

The following basic types are known:

uint8:Unsigned 8-bit integer
sint8:Signed 8-bit integer
uint16:Unsigned 16-bit integer
sint16:Signed 16-bit integer
uint32:Unsigned 32-bit integer
sint32:Signed 32-bit integer
uint64:Unsigned 64-bit integer
sint64:Signed 64-bit integer
string:UCS-2 string
boolean:Boolean
real32:IEEE 4-byte floating-point
real64:IEEE 8-byte floating-point
dateTime:A string containing a date-time
reference:Strongly typed reference
char16:16-bit UCS-2 character
void:— allowed for WMI only

Methods

==   array?   matches?   new   normalize   to_s   to_sym  

Constants

TYPES = [:null,:void,:boolean,:char16,:string,:uint8,:sint8,:uint16,:sint16,:uint32,:sint32,:uint64,:sint64,:real32,:real64,:dateTime,:class,:reference,:array]
NORMALIZE = { :bool => :boolean, :datetime => :dateTime
MATCHES = { :null => [], :void => [], # WMI :boolean => [], :char16 => [ :null, :string ], :string => [ :null ], :uint8 => [ :null ], :sint8 => [ :null ], :uint16 => [ :null, :uint8 ], :sint16 => [ :null, :sint8 ], :uint32 => [ :null, :uint8, :uint16 ], :sint32 => [ :null, :sint8, :sint16 ], :uint64 => [ :null, :uint8, :uint16, :sint32 ], :sint64 => [ :null, :sint8, :sint16, :sint32 ], :real32 => [ :null ], :real64 => [ :null, :real32 ], :dateTime => [ :null ], :class => [ :null ], :reference => [ :null ], :array => [ :null ]

Attributes

type  [R] 

Public Class methods

Basic types are created by-symbol or by-name

CIM::Type.new(:boolean) == CIM::Type.new("boolean")

Public Instance methods

type equality

check if another Type or Variant matches

returns a string representation in MOF syntax format

returns a symbol representation of the type

[Validate]