class
WinMD::File
- WinMD::File
- WinMD::Base
- Reference
- Object
Defined in:
winmd/template/file.crConstructors
Class Method Summary
Instance Method Summary
- #==(other : WinMD::File) : Bool
-
#add_include(inc : WinMD::Include)
Add includes but only if its unique
- #api : String
- #api=(api : String)
- #com_interfaces
- #constants : Array(WinMD::Constant)
- #constants=(constants : Array(WinMD::Constant))
-
#empty_shell?
True if this file would render as a bare `module ...
- #enums
- #file_name : String
- #file_name=(file_name : String)
- #file_path : String
- #file_path=(filename : String)
- #find_com_interface(name : String)
-
#foreign?
True if this file lives outside the projected Win32 namespace tree — i.e.
- #functions : Array(WinMD::Function)
- #functions=(functions : Array(WinMD::Function))
- #get_includes
- #get_kinds
- #get_types
- #has_kind?(str_kind : String)
- #has_type?(str_type : String)
- #includes : Array(WinMD::Include)
- #links : Array(String)
- #links=(links : Array(String))
- #namespace : String
- #namespace=(namespace : String)
- #native_typedefs
- #orig_file_name : String
- #orig_file_name=(orig_file_name : String)
-
#placeholder_only?
True if the file contains only placeholder NativeTypedef -> Void* entries (no real constants, functions, or richer types).
- #process_overrides
- #qualified_path
- #rel_path : String
- #render
- #set_file
- #structs_and_unions
- #types : Array(WinMD::Type)
- #types=(types : Array(WinMD::Type))
- #unicode_aliases : Array(String)
- #unicode_aliases=(unicode_aliases : Array(String))
Instance methods inherited from class WinMD::Base
after_initialize
after_initialize,
attrs : JSON::Any | Nil
attrs,
attrs=(attrs : JSON::Any | Nil)
attrs=,
file : WinMD::File | Nil
file,
file=(file : WinMD::File)
file=,
nested_type : Bool
nested_type,
nested_type=(nested_type : Bool)
nested_type=,
pad(p_size : Int32)pad pad, pad_size : Int32 pad_size, pad_size=(pad_size : Int32) pad_size=, pointer=(pointer : Bool) pointer=, pointer? : Bool pointer?
Constructor methods inherited from class WinMD::Base
new(pull : JSON::PullParser)
new
Constructor Detail
Class Method Detail
Instance Method Detail
True if this file would render as a bare module ... extend self end
with no constants, types, functions, or unicode aliases.
Produced by ensure_namespace_prefix_files when a namespace appears only
as an intermediate prefix and never contributes real content.
True if this file lives outside the projected Win32 namespace tree —
i.e. it was created for a Windows.Foundation.*, Windows.Storage.*,
etc. WinRT type that was referenced from a Win32 type via ApiRef but
has no metadata in Windows.Win32.winmd. The importer remaps these
to a WinRT.* namespace, so the prefix check here matches the
projected form, not the raw CLR namespace.
True if the file contains only placeholder NativeTypedef -> Void*
entries (no real constants, functions, or richer types). These are
emitted by Ecma335Importer#ensure_placeholder_types_for_missing_refs
to keep ApiRefs resolvable.