module WinMD

Defined in:

winmd.cr
winmd/cli/download.cr
winmd/cli/generate.cr
winmd/fun_param.cr

Constant Summary

DATA_TYPES_ALIASES = {"Char" => "UInt16", "Single" => "Float32", "Double" => "Float64", "SByte" => "Int8", "Byte" => "UInt8", "Guid" => "LibC::GUID", "UIntPtr" => "LibC::UIntPtrT", "IntPtr" => "LibC::IntPtrT", "Boolean" => "Bool"}
INT_TYPES = {{ Int.subclasses.map do |x| x.stringify end }}
LIBC_FUNS = {{ LibC.methods.map do |x| args = (x.args.stringify.gsub(/[\[|\]]/, "")).split(",") {name: x.name.stringify, args: args, return_type: x.return_type.stringify} end }}
VERSION = {{ (`shards version /srv/crystaldoc.info/github-mjblack-winmd-master/src`).chomp.stringify }}

Class Method Summary

Class Method Detail

def self.add_file(file : File) #

[View source]
def self.check_keyword(name : String) #

[View source]
def self.crystal_keywords #

[View source]
def self.crystal_keywords=(crystal_keywords) #

[View source]
def self.files #

[View source]
def self.files=(files) #

[View source]
def self.find_file_by_ns(name : String) #

[View source]
def self.fix_namespace(name : String) : Tuple(String, String) #

[View source]
def self.fix_param_name(name : String) #

[View source]
def self.fix_type_name(name : String) #

[View source]
def self.fun_handle : String #

[View source]
def self.fun_handle=(fun_handle : String) #

[View source]
def self.init #

[View source]
def self.libc_funs #

[View source]
def self.libc_funs=(libc_funs) #

[View source]
def self.log_file : Bool #

Runtime configuration parameters


[View source]
def self.log_file=(log_file : Bool) #

Runtime configuration parameters


[View source]
def self.log_file_name : Path #

[View source]
def self.log_file_name=(log_file_name : Path) #

[View source]
def self.log_level : Log::Severity #

[View source]
def self.log_level=(log_level : Log::Severity) #

[View source]
def self.output_dir : Path #

[View source]
def self.output_dir=(output_dir : Path) #

[View source]
def self.process_json_files(path : Path) #

[View source]
def self.rename_type(name : String) #

[View source]
def self.resolve_com_interfaces #

[View source]
def self.top_level_namespace : String #

[View source]
def self.top_level_namespace=(top_level_namespace : String) #

[View source]
def self.write_files(dir : Path) #

[View source]