Class: EnumTypeDef
- Defined in:
- lib/runtime.rb,
lib/generators/scala_server_generator.rb,
lib/generators/unity_client_generator.rb,
lib/generators/elixir_server_generator.rb
Instance Attribute Summary collapse
-
#doc ⇒ Object
readonly
Returns the value of attribute doc.
-
#elements ⇒ Object
readonly
Returns the value of attribute elements.
Attributes inherited from TypeDef
Attributes inherited from Def
Instance Method Summary collapse
- #add_element(element_def) ⇒ Object
- #elixir_name ⇒ Object
- #elixir_read ⇒ Object
- #elixir_read_name ⇒ Object
- #elixir_reader ⇒ Object
- #elixir_type ⇒ Object
- #elixir_write(member_name) ⇒ Object
- #elixir_write_name ⇒ Object
- #elixir_writer ⇒ Object
-
#initialize(ast) ⇒ EnumTypeDef
constructor
A new instance of EnumTypeDef.
- #scala ⇒ Object
- #unity ⇒ Object
Constructor Details
#initialize(ast) ⇒ EnumTypeDef
Returns a new instance of EnumTypeDef.
43 44 45 46 47 |
# File 'lib/runtime.rb', line 43 def initialize ast super ast, ast.name @doc = ast.doc @elements = {} end |
Instance Attribute Details
#doc ⇒ Object (readonly)
Returns the value of attribute doc.
41 42 43 |
# File 'lib/runtime.rb', line 41 def doc @doc end |
#elements ⇒ Object (readonly)
Returns the value of attribute elements.
41 42 43 |
# File 'lib/runtime.rb', line 41 def elements @elements end |
Instance Method Details
#add_element(element_def) ⇒ Object
49 50 51 |
# File 'lib/runtime.rb', line 49 def add_element element_def @elements[element_def.name] = element_def end |
#elixir_name ⇒ Object
5 6 7 |
# File 'lib/generators/elixir_server_generator.rb', line 5 def elixir_name @name.underscore end |
#elixir_read ⇒ Object
17 18 19 |
# File 'lib/generators/elixir_server_generator.rb', line 17 def elixir_read "#{self.elixir_read_name}(data)" end |
#elixir_read_name ⇒ Object
9 10 11 |
# File 'lib/generators/elixir_server_generator.rb', line 9 def elixir_read_name "read_#{self.elixir_name}" end |
#elixir_reader ⇒ Object
25 26 27 |
# File 'lib/generators/elixir_server_generator.rb', line 25 def elixir_reader "#{self.elixir_read_name}/1" end |
#elixir_type ⇒ Object
33 34 35 |
# File 'lib/generators/elixir_server_generator.rb', line 33 def elixir_type @elements.values.map { |e| e.elixir_name } .join ' | ' end |
#elixir_write(member_name) ⇒ Object
21 22 23 |
# File 'lib/generators/elixir_server_generator.rb', line 21 def elixir_write member_name "#{self.elixir_write_name}(data, #{member_name})" end |
#elixir_write_name ⇒ Object
13 14 15 |
# File 'lib/generators/elixir_server_generator.rb', line 13 def elixir_write_name "write_#{self.elixir_name}" end |
#elixir_writer ⇒ Object
29 30 31 |
# File 'lib/generators/elixir_server_generator.rb', line 29 def elixir_writer "#{self.elixir_write_name}/2" end |
#scala ⇒ Object
20 21 22 |
# File 'lib/generators/scala_server_generator.rb', line 20 def scala @name + '.Value' end |
#unity ⇒ Object
36 37 38 |
# File 'lib/generators/unity_client_generator.rb', line 36 def unity @name end |