34 lines
393 B
V
34 lines
393 B
V
struct Alfa {
|
|
char rune
|
|
}
|
|
|
|
fn (a Alfa) letter() rune {
|
|
return a.char
|
|
}
|
|
|
|
struct Bravo {
|
|
char rune
|
|
}
|
|
|
|
fn (b Bravo) letter() rune {
|
|
return b.char
|
|
}
|
|
|
|
struct Charlie {}
|
|
|
|
type NATOAlphabet = Alfa | Bravo | Charlie
|
|
|
|
fn method_not_exists() {
|
|
a := Alfa{}
|
|
l := NATOAlphabet(a)
|
|
match l {
|
|
Alfa, Charlie {
|
|
assert l.char == `a`
|
|
assert l.letter() == 'a'
|
|
}
|
|
Bravo {
|
|
assert false
|
|
}
|
|
}
|
|
}
|