Files
swift-mirror/test/Inputs/clang-importer-sdk/usr/include/module.map
Saleem Abdulrasool 83b290438c Windows: bridge BOOL to Bool
This allows the conversion of the Windows `BOOL` type to be converted to
`Bool` implicitly.  The implicit bridging allows for a more ergonomic
use of the native Windows APIs in Swift.

Due to the ambiguity between the Objective C `BOOL` and the Windows
`BOOL`, we must manually map the `BOOL` type to the appropriate type.
This required lifting the mapping entry for `ObjCBool` from the mapped
types XMACRO definition into the inline definition in the importer.

Take the opportunity to simplify the mapping code.

Adjust the standard library usage of the `BOOL` type which is now
eclipsed by the new `WindowsBool` type, preferring to use `Bool`
whenever possible.

Thanks to Jordan Rose for the suggestion to do this and a couple of
hints along the way.
2019-04-25 17:52:08 -07:00

139 lines
2.0 KiB
Plaintext

module cfuncs { header "cfuncs.h" }
module ctypes {
header "ctypes.h"
explicit module bits {
header "ctypes/bits.h"
}
}
module stdio { header "stdio.h" }
module cvars { header "cvars.h" }
module blocks {
header "blocks.h"
export *
}
// Note: The real Darwin includes stdc stuff. This one is just for testing
// Darwin-specific things.
module Darwin {
module MacTypes {
header "MacTypes.h"
export *
}
}
module CoreMIDI {
header "CoreMIDI.h"
export *
}
module Dispatch {
header "dispatch.h"
export *
}
module MachO {
header "dyld.h"
export *
}
module AVFoundation {
header "AVFoundation.h"
export *
}
module CoreGraphics {
header "CoreGraphics.h"
export *
}
module CoreFoundation {
header "CoreFoundation.h"
export *
}
module Foundation {
header "Foundation.h"
export *
}
module AppKit {
header "AppKit.h"
export *
}
module UIKit {
header "UIKit.h"
export *
}
module NotificationCenter {
header "NotificationCenter.h"
export *
}
module objc_ext { header "objc_ext.h" }
module macros {
header "macros.h"
// Don't re-export macros_private_impl.
export macros_impl
}
module macros_impl { header "macros_impl.h" }
module macros_private_impl { header "macros_private_impl.h" }
module user_objc { header "user_objc.h" }
module Properties {
header "Properties.h"
export *
}
module Security {
header "Authorization.h"
header "SecItem.h"
export *
}
module nullability {
header "nullability.h"
export *
}
module objc_structs {
header "objc_structs.h"
export *
}
module enums_using_attributes {
header "enums_using_attributes.h"
}
module errors {
header "errors.h"
export *
}
module c_simd {
header "simd.h"
export *
}
module objc_generics {
header "objc_generics.h"
export *
}
module CoreMedia {
header "CoreMedia.h"
export *
}
module OtherSubscripts {
header "OtherSubscripts.h"
export *
}
module bridged_typedef {
header "bridged_typedef.h"
export *
}
module WinBOOL {
header "winbool.h"
export *
}