Class: Babeltrace2::BTFieldClass::Variant::Option

Inherits:
Babeltrace2::BTObject show all
Defined in:
lib/babeltrace2/trace-ir/field-class.rb

Instance Attribute Summary

Attributes inherited from Babeltrace2::BTObject

#handle

Instance Method Summary collapse

Methods inherited from Babeltrace2::BTObject

#==, #initialize, #to_ptr

Constructor Details

This class inherits a constructor from Babeltrace2::BTObject

Instance Method Details

#get_field_classObject Also known as: field_class



1442
1443
1444
1445
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 1442

def get_field_class
  BTFieldClass.from_handle(
    Babeltrace2.bt_field_class_variant_option_borrow_field_class(@handle))
end

#get_nameObject Also known as: name



1436
1437
1438
1439
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 1436

def get_name
  name = Babeltrace2.bt_field_class_variant_option_get_name(@handle)
  name[0] == ':' ? name[1..-1].to_sym : name
end

#get_user_attributesObject Also known as: user_attributes



1459
1460
1461
1462
1463
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 1459

def get_user_attributes
  BTValueMap.new(
    Babeltrace2.bt_field_class_variant_option_borrow_user_attributes_const(
      @handle), retain: true)
end

#set_user_attributes(user_attributes) ⇒ Object



1448
1449
1450
1451
1452
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 1448

def set_user_attributes(user_attributes)
  bt_user_attributes = BTValue.from_value(user_attributes)
  Babeltrace2.bt_field_class_variant_option_set_user_attributes(@handle, bt_user_attributes)
  self
end

#to_hObject



1466
1467
1468
1469
1470
1471
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 1466

def to_h
  res = { name: name, field_class: field_class.to_h }
  user_attributes_value = user_attributes.value
  res[:user_attributes] = user_attributes_value if !user_attributes_value.empty?
  res
end

#user_attributes=(user_attributes) ⇒ Object



1454
1455
1456
1457
# File 'lib/babeltrace2/trace-ir/field-class.rb', line 1454

def user_attributes=(user_attributes)
  set_user_attributes(user_attributes)
  user_attributes
end