Class: CIM::QualifierFlavors

Inherits:
Array
  • Object
show all
Defined in:
lib/cim/qualifier_flavors.rb

Overview

Qualifier flavors are a fixed set. QualifierFlavors tracks which flavors are enabled for a specific QualifierDeclaration.

Allowed flavors are

amended
wmi

Marks a qualifier value for localization (default: false)

enableoverride

The qualifier can be overriden (in a subclass) (default: true)

disableoverride

The qualifier can not be overriden (default: false)

restricted

The qualifier only applies to the class in which it is declared (default: false)

toinstance
wmi
tosubclass

The qualifier is inherited by any subclass (default: true)

translatable

Marks a qualifier value for localization (default: false)

Constant Summary collapse

FLAVORS =
[:amended, :enableoverride, :disableoverride, :restricted, :toinstance, :tosubclass, :translatable]

Instance Method Summary collapse

Constructor Details

#initialize(*flavors) ⇒ QualifierFlavors

Create QualifierFlavors with an initial flavor. More flavors can be added through the << method.

call-seq:

QualifierFlavors.new :tosubclass => qualifier_flavors
QualifierFlavors.new "tosubclass" => qualifier_flavors
QualifierFlavors.new "ToSubClass" => qualifier_flavors

The flavor can be named as a string or a symbol.



47
48
49
50
51
# File 'lib/cim/qualifier_flavors.rb', line 47

def initialize *flavors
  flavors.flatten.each do |flavor|
	self << flavor
  end
end

Instance Method Details

#<<(flavor) ⇒ Object

Add a flavor to the set The flavor can be named as a string or a symbol.

call-seq:

qualifier_flavors << :tosubclass
qualifier_flavors << "tosubclass"
qualifier_flavors << "ToSubClass"

Raises QualifierFlavorError if its not an allowed flavor



63
64
65
66
# File 'lib/cim/qualifier_flavors.rb', line 63

def << flavor
  super(normalize flavor)
  self
end

#include?(flavor) ⇒ Boolean Also known as: includes?

Check if a specific flavor is included in the set

call-seq:

qualifier_flavors.include? :tosubclass
qualifier_flavors.include? "tosubclass"
qualifier_flavors.include? "ToSubClass"

Raises QualifierFlavorError if its not an allowed flavor

Returns:

  • (Boolean)


77
78
79
# File 'lib/cim/qualifier_flavors.rb', line 77

def include? flavor
  super(normalize flavor)
end

#to_sObject

returns a string representation in MOF syntax format



84
85
86
# File 'lib/cim/qualifier_flavors.rb', line 84

def to_s
  "Flavor(#{self.join(', ')})"
end