Sha256: d82b1eb9060495dceb83bf8a40a4f879ae5bf97052a5229de7aa4927dd11384e
Contents?: true
Size: 778 Bytes
Versions: 10
Compression:
Stored size: 778 Bytes
Contents
module RbPlusPlus module Builders module EnumerationHelpers # Wrap up enumerations for this node. # Anonymous enumerations are a special case. C++ doesn't # see them as a seperate type and instead are just "scoped" constants, # so we have to wrap them as such, constants. def with_enumerations [self.code.enumerations].flatten.each do |enum| next if do_not_wrap?(enum) if enum.anonymous? # So for each value of this enumeration, # expose it as a constant enum.values.each do |value| add_child ConstNode.new(value, self) end else add_child EnumerationNode.new(enum, self) end end end end end end
Version data entries
10 entries across 10 versions & 1 rubygems