blob: 368356a8f2ea434434822123f5e4e001d2c48544 [file] [log] [blame]
void main() {
var f0 = () => print("hello");
f0 > 42;
(() => print("hello")) > 42;
f0 >> 42;
(() => print("hello")) >> 42;
f0 >>> 42;
(() => print("hello")) >>> 42;
var f1 = (x) => print("hello $x");
f1 > 42;
((x) => print("hello $x")) > 42;
f1 >> 42;
((x) => print("hello $x")) >> 42;
f1 >>> 42;
((x) => print("hello $x")) >>> 42;
var f2 = (x, y) => print("hello $x $y");
f2 > 42;
((x, y) => print("hello $x $y")) > 42;
f2 >> 42;
((x, y) => print("hello $x $y")) >> 42;
f2 >>> 42;
((x, y) => print("hello $x $y")) >>> 42;
(() => print("hello"), ) > 42;
(() => print("hello"), ) >> 42;
(() => print("hello"), ) >>> 42;
(() => print("hello"), () => print("hello")) > 42;
(() => print("hello"), () => print("hello")) >> 42;
(() => print("hello"), () => print("hello")) >>> 42;
}
extension FunctionExtension on Function {
operator>(dynamic x) {
print("You did > with '$x' on '$this' (Function)");
}
operator>>(dynamic x) {
print("You did >> with '$x' on '$this' (Function)");
}
operator>>>(dynamic x) {
print("You did >>> with '$x' on '$this' (Function)");
}
}
extension RecordExtension on Record {
operator>(dynamic x) {
print("You did > with '$x' on '$this' (Record)");
}
operator>>(dynamic x) {
print("You did >> with '$x' on '$this' (Record)");
}
operator>>>(dynamic x) {
print("You did >>> with '$x' on '$this' (Record)");
}
}
void[KeywordToken] main[StringToken]([BeginToken])[SimpleToken] {[BeginToken]
var[KeywordToken] f0[StringToken] =[SimpleToken] ([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken];[SimpleToken]
f0[StringToken] >[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken])[SimpleToken] >[SimpleToken] 42[StringToken];[SimpleToken]
f0[StringToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken])[SimpleToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
f0[StringToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken])[SimpleToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
var[KeywordToken] f1[StringToken] =[SimpleToken] ([BeginToken]x[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken]"[StringToken])[SimpleToken];[SimpleToken]
f1[StringToken] >[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken]x[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken]"[StringToken])[SimpleToken])[SimpleToken] >[SimpleToken] 42[StringToken];[SimpleToken]
f1[StringToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken]x[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken]"[StringToken])[SimpleToken])[SimpleToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
f1[StringToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken]x[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken]"[StringToken])[SimpleToken])[SimpleToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
var[KeywordToken] f2[StringToken] =[SimpleToken] ([BeginToken]x[StringToken],[SimpleToken] y[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken] [StringToken]$[SimpleToken]y[StringToken]"[StringToken])[SimpleToken];[SimpleToken]
f2[StringToken] >[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken]x[StringToken],[SimpleToken] y[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken] [StringToken]$[SimpleToken]y[StringToken]"[StringToken])[SimpleToken])[SimpleToken] >[SimpleToken] 42[StringToken];[SimpleToken]
f2[StringToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken]x[StringToken],[SimpleToken] y[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken] [StringToken]$[SimpleToken]y[StringToken]"[StringToken])[SimpleToken])[SimpleToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
f2[StringToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken]x[StringToken],[SimpleToken] y[StringToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello [StringToken]$[SimpleToken]x[StringToken] [StringToken]$[SimpleToken]y[StringToken]"[StringToken])[SimpleToken])[SimpleToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken],[SimpleToken] )[SimpleToken] >[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken],[SimpleToken] )[SimpleToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken],[SimpleToken] )[SimpleToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken],[SimpleToken] ([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken])[SimpleToken] >[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken],[SimpleToken] ([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken])[SimpleToken] >>[SimpleToken] 42[StringToken];[SimpleToken]
([BeginToken]([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken],[SimpleToken] ([BeginToken])[SimpleToken] =>[SimpleToken] print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken])[SimpleToken] >>>[SimpleToken] 42[StringToken];[SimpleToken]
}[SimpleToken]
extension[KeywordToken] FunctionExtension[StringToken] on[KeywordToken] Function[KeywordToken] {[BeginToken]
operator[KeywordToken]>[SimpleToken]([BeginToken]dynamic[KeywordToken] x[StringToken])[SimpleToken] {[BeginToken]
print[StringToken]([BeginToken]"You did > with '[StringToken]$[SimpleToken]x[StringToken]' on '[StringToken]$[SimpleToken]this[KeywordToken]' (Function)"[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]
operator[KeywordToken]>>[SimpleToken]([BeginToken]dynamic[KeywordToken] x[StringToken])[SimpleToken] {[BeginToken]
print[StringToken]([BeginToken]"You did >> with '[StringToken]$[SimpleToken]x[StringToken]' on '[StringToken]$[SimpleToken]this[KeywordToken]' (Function)"[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]
operator[KeywordToken]>>>[SimpleToken]([BeginToken]dynamic[KeywordToken] x[StringToken])[SimpleToken] {[BeginToken]
print[StringToken]([BeginToken]"You did >>> with '[StringToken]$[SimpleToken]x[StringToken]' on '[StringToken]$[SimpleToken]this[KeywordToken]' (Function)"[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]
}[SimpleToken]
extension[KeywordToken] RecordExtension[StringToken] on[KeywordToken] Record[StringToken] {[BeginToken]
operator[KeywordToken]>[SimpleToken]([BeginToken]dynamic[KeywordToken] x[StringToken])[SimpleToken] {[BeginToken]
print[StringToken]([BeginToken]"You did > with '[StringToken]$[SimpleToken]x[StringToken]' on '[StringToken]$[SimpleToken]this[KeywordToken]' (Record)"[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]
operator[KeywordToken]>>[SimpleToken]([BeginToken]dynamic[KeywordToken] x[StringToken])[SimpleToken] {[BeginToken]
print[StringToken]([BeginToken]"You did >> with '[StringToken]$[SimpleToken]x[StringToken]' on '[StringToken]$[SimpleToken]this[KeywordToken]' (Record)"[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]
operator[KeywordToken]>>>[SimpleToken]([BeginToken]dynamic[KeywordToken] x[StringToken])[SimpleToken] {[BeginToken]
print[StringToken]([BeginToken]"You did >>> with '[StringToken]$[SimpleToken]x[StringToken]' on '[StringToken]$[SimpleToken]this[KeywordToken]' (Record)"[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]
}[SimpleToken][SimpleToken]