class StructTypeDef

Attributes

doc[R]
members[R]

Public Class Methods

new(ast) click to toggle source
Calls superclass method TypeDef::new
# File lib/runtime.rb, line 72
def initialize ast
        super ast, ast.name
        @members = []
        @doc = ast.doc
end

Public Instance Methods

add_member(member_def) click to toggle source
# File lib/runtime.rb, line 78
def add_member member_def
        @members.push member_def
end
bot_members() click to toggle source
# File lib/generators/bot_generator.rb, line 237
def bot_members
    @members.map { |m| ":" + m.bot_name } .join ', '
end
bot_members_with_types(node) click to toggle source
# File lib/generators/bot_generator.rb, line 241
def bot_members_with_types node
    @members.map { |m| m.bot_name + ": " + m.type.bot_type(node) } .join ', '
end
bot_members_with_values() click to toggle source
# File lib/generators/bot_generator.rb, line 245
def bot_members_with_values
    @members.map { |m| m.bot_name + ": " + m.bot_name } .join ', '
end
bot_read(node) click to toggle source
# File lib/generators/bot_generator.rb, line 253
def bot_read node
    "#{node.namespace}.#{@name}.read(data)"
end
bot_reader(node) click to toggle source
# File lib/generators/bot_generator.rb, line 261
def bot_reader node
    "&#{node.namespace}.#{@name}.read/1"
end
bot_type(node) click to toggle source
# File lib/generators/bot_generator.rb, line 249
def bot_type node
    "#{node.namespace}.#{@name}.t"
end
bot_write(node, member_name) click to toggle source
# File lib/generators/bot_generator.rb, line 257
def bot_write node, member_name
    "#{node.namespace}.#{@name}.write(data, #{member_name})"
end
bot_writer(node) click to toggle source
# File lib/generators/bot_generator.rb, line 265
def bot_writer node
    "&#{node.namespace}.#{@name}.write/2"
end
elixir_members() click to toggle source
# File lib/generators/elixir_server_generator.rb, line 237
def elixir_members
    @members.map { |m| ":" + m.elixir_name } .join ', '
end
elixir_members_with_types(node) click to toggle source
# File lib/generators/elixir_server_generator.rb, line 241
def elixir_members_with_types node
    @members.map { |m| m.elixir_name + ": " + m.type.elixir_type(node) } .join ', '
end
elixir_members_with_values() click to toggle source
# File lib/generators/elixir_server_generator.rb, line 245
def elixir_members_with_values
    @members.map { |m| m.elixir_name + ": " + m.elixir_name } .join ', '
end
elixir_read(node) click to toggle source
# File lib/generators/elixir_server_generator.rb, line 253
def elixir_read node
    "#{node.namespace}.#{@name}.read(data)"
end
elixir_reader(node) click to toggle source
# File lib/generators/elixir_server_generator.rb, line 261
def elixir_reader node
    "&#{node.namespace}.#{@name}.read/1"
end
elixir_type(node) click to toggle source
# File lib/generators/elixir_server_generator.rb, line 249
def elixir_type node
    "#{node.namespace}.#{@name}.t"
end
elixir_write(node, member_name) click to toggle source
# File lib/generators/elixir_server_generator.rb, line 257
def elixir_write node, member_name
    "#{node.namespace}.#{@name}.write(data, #{member_name})"
end
elixir_writer(node) click to toggle source
# File lib/generators/elixir_server_generator.rb, line 265
def elixir_writer node
    "&#{node.namespace}.#{@name}.write/2"
end
get_member(name) click to toggle source
# File lib/runtime.rb, line 82
def get_member name
        @members.find { |m| m.name == name }
end
scala() click to toggle source
# File lib/generators/scala_server_generator.rb, line 27
def scala
        @name
end
unity() click to toggle source
# File lib/generators/unity_client_generator.rb, line 43
def unity
        @name
end