class Crygen::Types::Struct

Overview

A class that generates a struct.

method_type = CGT::Method.new("full_name", "String")
method_type.add_body("John Doe".dump)
struct_type = test_point_struct()
struct_type.add_method(method_type)
puts struct_type.generate

Output:

# This is a struct called Point.
struct Point
  def full_name : String
    "John Doe"
  end
end

Included Modules

Defined in:

types/struct.cr

Constructors

Instance Method Summary

Instance methods inherited from module Crygen::Modules::Annotation

add_annotation(annotation_type : Crygen::Types::Annotation) : self add_annotation

Instance methods inherited from module Crygen::Modules::Method

add_method(method : Crygen::Types::Method) : self add_method

Instance methods inherited from module Crygen::Modules::ClassVar

add_class_var(name : String, type : String, value : String) : self
add_class_var(name : String, type : String) : self
add_class_var
, generate_class_vars : String generate_class_vars

Instance methods inherited from module Crygen::Modules::InstanceVar

add_instance_var(name : String, type : String, value : String) : self
add_instance_var(name : String, type : String) : self
add_instance_var
, generate_instance_vars : String generate_instance_vars

Instance methods inherited from module Crygen::Modules::Property

add_property(visibility : Crygen::Enums::PropVisibility, name : String, type : String, scope : Crygen::Enums::PropScope = :public) : self
add_property(visibility : Crygen::Enums::PropVisibility, name : String, type : String, value : String, scope : Crygen::Enums::PropScope = :public) : self
add_property

Instance methods inherited from module Crygen::Modules::Comment

add_comment(value : String) : self add_comment

Instance methods inherited from class Crygen::Abstract::GeneratorInterface

generate : String generate

Constructor Detail

def self.new(name : String) #

[View source]

Instance Method Detail

def generate : String #

Generates a struct. Returns: String


[View source]