Sha256: 9dc56b8be6d2061260c2f35f625927ed7dca6c3b0c23129e97b57fd882d00e25
Contents?: true
Size: 1011 Bytes
Versions: 3
Compression:
Stored size: 1011 Bytes
Contents
require 'protobuf/generators/base' module Protobuf module Generators class EnumGenerator < Base def allow_alias? descriptor.options.try(:allow_alias!) { false } end def compile run_once(:compile) do tags = [] print_class(descriptor.name, :enum) do if allow_alias? puts "set_option :allow_alias" puts end descriptor.value.each do |enum_value_descriptor| tags << enum_value_descriptor.number puts build_value(enum_value_descriptor) end end unless allow_alias? self.class.validate_tags(fully_qualified_type_namespace, tags) end end end def build_value(enum_value_descriptor) name = enum_value_descriptor.name name.upcase! if ENV.key?('PB_UPCASE_ENUMS') number = enum_value_descriptor.number "define :#{name}, #{number}" end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
protobuf-3.7.0.pre2 | lib/protobuf/generators/enum_generator.rb |
protobuf-3.7.0.pre1 | lib/protobuf/generators/enum_generator.rb |
protobuf-3.7.0.pre0 | lib/protobuf/generators/enum_generator.rb |