class Telegram::Generator

Defined in:

telegram/generator/generator.cr

Constant Summary

FIELD_ANNOTATIONS = {"date" => ["@[JSON::Field(converter: Time::EpochConverter)]"], "forward_date" => ["@[JSON::Field(converter: Time::EpochConverter)]"], "edit_date" => ["@[JSON::Field(converter: Time::EpochConverter)]"]}
FIELD_OVERRIDES = {"parse_mode" => "ParseMode", "date" => "Time", "forward_date" => "Time", "edit_date" => "Time"}
INT64_FIELDS = ["id", "user_id", "chat_id", "channel_id"]
SKIPPED_TYPES = ["InputFile", "InputMedia", "InputMessageContent", "BotCommandScope"]

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.new(json : String) #

[View source]
def self.new(api : TelegramAPI) #

[View source]

Class Method Detail

def self.fetch_api_json(hash : String | Nil = nil) #

[View source]
def self.generate_class_for(type : Type, indent : Int32 = 0) #

[View source]
def self.generate_method_for(method : Method, indent : Int32 = 0) #

[View source]
def self.parse_type(type : String, field : String | Nil = nil) #

[View source]

Instance Method Detail

def api : TelegramAPI #

[View source]
def write_methods(file : String, header : String | Nil = nil, namespace : String | Nil = nil) #

[View source]
def write_types(file : String, header : String | Nil = nil, namespace : String | Nil = nil) #

[View source]