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
package foo:bar
interface foo {
resource a {
}
resource b {
constructor()
}
resource c {
constructor(x: u32)
}
resource d {
constructor(x: u32)
a: func()
b: static func()
}
resource e {
constructor(other: own<e>, other2: borrow<e>)
method: func(thing: own<e>, thing2: borrow<e>)
}
}
world w {
resource a
resource b {
}
resource c {
constructor()
}
}
interface i {
resource a
type t1 = a
type t2 = borrow<a>
type t3 = borrow<t1>
}