Module: Gapic::RubyInfo

Defined in:
lib/gapic/ruby_info.rb

Overview

Various Ruby language information useful for generators.

Class Method Summary collapse

Class Method Details

.excluded_method_namesArray<String>

A sorted list of method names that generated code should avoid. This includes methods of the Object class (including BasicObject and Kernel), Ruby keywords, and a few special names including "initialize" and "configure".

Returns:

  • (Array<String>)


84
85
86
87
88
89
90
# File 'lib/gapic/ruby_info.rb', line 84

def excluded_method_names
  @excluded_method_names ||= begin
    object_methods = (Object.instance_methods + Object.private_instance_methods).map(&:to_s)
    other_methods = ["configure", "initialize"]
    (object_methods + other_methods + keywords).sort.freeze
  end
end

.keywordsArray<String>

A sorted list of Ruby's keywords.

Returns:

  • (Array<String>)

See Also:



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/gapic/ruby_info.rb', line 30

def keywords
  @keywords ||= [
    "__ENCODING__",
    "__LINE__",
    "__FILE__",
    "BEGIN",
    "END",
    "alias",
    "and",
    "begin",
    "break",
    "case",
    "class",
    "def",
    "defined?",
    "do",
    "else",
    "elsif",
    "end",
    "ensure",
    "false",
    "for",
    "if",
    "in",
    "module",
    "next",
    "nil",
    "not",
    "or",
    "redo",
    "rescue",
    "retry",
    "return",
    "self",
    "super",
    "then",
    "true",
    "undef",
    "unless",
    "until",
    "when",
    "while",
    "yield"
  ].freeze
end