class GL::Registry::FeatureGroup

Describes a logical grouping of features for an OpenGL API.

Attributes

removals[R]

@return [Array<Feature>] an array of features that this instance removes.

version[R]

@return [String] the OpenGL version this feature is associated with.

Public Class Methods

new(node) click to toggle source

Creates a new instance of the {Feature} class.

@param node [Ox::Element] The XML element defining the instance.

Calls superclass method
# File lib/opengl/registry/feature_group.rb, line 20
def initialize(node)
  super(node)

  @version = node[Words::NUMBER]
  @removals = []
  node.locate('remove').each do |child|

    api = child[Words::API]&.to_sym || @api
    profile = child[Words::PROFILE]&.to_sym

    child.nodes.each do |item|
      next unless item.is_a?(Ox::Element)
      @removals << Feature.new(item, api, profile)
    end
  end
end