module Protobuf::Generate::Language::C::Conventions

Public Instance Methods

constant(*name;) click to toggle source
# File lib/protobuf/generate/language/c.rb, line 15
def constant *name; snake_case(*name).upcase end
function(*name;) click to toggle source
# File lib/protobuf/generate/language/c.rb, line 16
def function *name; snake_case *name         end
type(*name;) click to toggle source
# File lib/protobuf/generate/language/c.rb, line 13
def type     *name; snake_case *name, 't'    end
variable(*name;) click to toggle source
# File lib/protobuf/generate/language/c.rb, line 14
def variable *name; snake_case *name         end

Protected Instance Methods

snake_case(*name) click to toggle source
# File lib/protobuf/generate/language/c.rb, line 19
def snake_case *name
  name.compact.map(&:to_s).join('_').gsub(/([^A-Z_])([A-Z]+)/, '\1_\2').gsub(/[_.]+/, '_').downcase
end