-
Notifications
You must be signed in to change notification settings - Fork 0
/
triple.e
67 lines (54 loc) · 1.01 KB
/
triple.e
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
note
description: "Summary description for {TRIPLE}."
author: ""
date: "$Date$"
revision: "$Revision$"
class
TRIPLE
create
make_from_string,
host_triple
feature {NONE}
make_from_string (str: STRING)
local
c_str: C_STRING
do
create c_str.make (str)
item := ctor_string (c_str.item)
end
host_triple
local
host_c_str: C_STRING
do
create host_c_str.make_by_pointer (host_triple_external)
item := ctor_string (host_c_str.item)
end
feature
item: POINTER
feature {NONE} -- Externals
host_triple_external: POINTER
external
"C++ inline use %"llvm/System/Host.h%""
alias
"[
return (EIF_POINTER)llvm::sys::getHostTriple ().c_str ();
]"
end
ctor: POINTER
external
"C++ inline use %"llvm/ADT/Triple.h%""
alias
"[
return new llvm::Triple;
]"
end
ctor_string (string: POINTER): POINTER
external
"C++ inline use %"llvm/ADT/Triple.h%""
alias
"[
std::string str ((const char *)$string);
return new llvm::Triple (str);
]"
end
end