-
Notifications
You must be signed in to change notification settings - Fork 10.5k
/
Copy pathdef_transparent_std.swift
34 lines (26 loc) · 1.03 KB
/
def_transparent_std.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class C {}
@_transparent public func foo(x: Builtin.Int1, y: Builtin.Int1) -> Builtin.Int1 {
return Builtin.cmp_eq_Int1(x, y)
}
@_transparent public func destroy_obj(x: Builtin.RawPointer) {
return Builtin.destroy(Builtin.NativeObject.self, x)
}
@_transparent public func assign_tuple(x: (Builtin.Int64, Builtin.NativeObject),
y: Builtin.RawPointer) {
Builtin.assign(x, y)
}
@_transparent public func class_to_native_object(c: C) -> Builtin.NativeObject {
return Builtin.castToNativeObject(c)
}
@_transparent public func class_from_native_object(p: Builtin.NativeObject) -> C {
return Builtin.castFromNativeObject(p)
}
@_transparent public func class_to_raw_pointer(c: C) -> Builtin.RawPointer {
return Builtin.bridgeToRawPointer(c)
}
@_transparent public func class_from_raw_pointer(p: Builtin.RawPointer) -> C {
return Builtin.bridgeFromRawPointer(p)
}
@_transparent public func gep32(p: Builtin.RawPointer, i: Builtin.Int32) -> Builtin.RawPointer {
return Builtin.gepRaw_Int32(p, i)
}