/
customFields.skill
68 lines (55 loc) · 1.2 KB
/
customFields.skill
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
68
#! custom
# custom field test code; defines data structures in languages.
#
# @note The language name is case-insensitive.
Basis {}
interface IBase : Basis {
custom scala
"Any" any3;
}
/**
* Check that custom fields survive projection and exist in unprojected interfaces.
*/
interface ProjectedCustom {
custom ada
!with "System.Address"
"System.Address" any2;
/** some comment */
custom java
!import "java.lang.Object"
!modifier "public transient"
"Object" any2;
custom ScaLa
"Any" any2;
custom cpp
!include "cstdint"
"uint8_t*" any4;
custom cpp
"uint8_t*" any5;
}
/**
* Demonstration of the capabilities of custom fields.
*
* @note Despite the appearance in the specification, for any given language, the Type has at most one field.
*/
Custom : ProjectedCustom : IBase {
custom ada
!with "System.Address"
"System.Address" any;
custom Cthulhu
!say "Rlyeh"
"<not chechked> can contain anything ☢@Πᚠ!" any;
/** some comment */
custom java
!import "java.lang.Object"
!modifier "public transient"
"Object" any;
custom ScaLa
!modifier "/* no modifier */"
"Any" any;
custom cpp
!include "cstdint"
"uint8_t*" any;
custom cpp
"uint8_t*" any2;
}