blob: 02660ac79307cc6153ebdff083d600e6422aeac4 [file] [log] [blame]
// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// Generated by
//
// pkg/front_end/benchmarks/patterns/generate_datatypes.dart
import '../test_datatypes.dart';
abstract class Base32 {
void dynamicDispatch(Counter counter);
R accept<R, A>(Visitor32<R, A> visitor, A arg);
}
class Sub0 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch0(Counter counter) {
counter.inc();
}
void visitorDispatch0(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub0(this, arg);
}
}
class Sub1 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch1(Counter counter) {
counter.inc();
}
void visitorDispatch1(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub1(this, arg);
}
}
class Sub2 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch2(Counter counter) {
counter.inc();
}
void visitorDispatch2(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub2(this, arg);
}
}
class Sub3 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch3(Counter counter) {
counter.inc();
}
void visitorDispatch3(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub3(this, arg);
}
}
class Sub4 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch4(Counter counter) {
counter.inc();
}
void visitorDispatch4(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub4(this, arg);
}
}
class Sub5 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch5(Counter counter) {
counter.inc();
}
void visitorDispatch5(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub5(this, arg);
}
}
class Sub6 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch6(Counter counter) {
counter.inc();
}
void visitorDispatch6(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub6(this, arg);
}
}
class Sub7 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch7(Counter counter) {
counter.inc();
}
void visitorDispatch7(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub7(this, arg);
}
}
class Sub8 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch8(Counter counter) {
counter.inc();
}
void visitorDispatch8(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub8(this, arg);
}
}
class Sub9 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch9(Counter counter) {
counter.inc();
}
void visitorDispatch9(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub9(this, arg);
}
}
class Sub10 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch10(Counter counter) {
counter.inc();
}
void visitorDispatch10(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub10(this, arg);
}
}
class Sub11 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch11(Counter counter) {
counter.inc();
}
void visitorDispatch11(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub11(this, arg);
}
}
class Sub12 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch12(Counter counter) {
counter.inc();
}
void visitorDispatch12(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub12(this, arg);
}
}
class Sub13 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch13(Counter counter) {
counter.inc();
}
void visitorDispatch13(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub13(this, arg);
}
}
class Sub14 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch14(Counter counter) {
counter.inc();
}
void visitorDispatch14(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub14(this, arg);
}
}
class Sub15 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch15(Counter counter) {
counter.inc();
}
void visitorDispatch15(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub15(this, arg);
}
}
class Sub16 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch16(Counter counter) {
counter.inc();
}
void visitorDispatch16(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub16(this, arg);
}
}
class Sub17 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch17(Counter counter) {
counter.inc();
}
void visitorDispatch17(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub17(this, arg);
}
}
class Sub18 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch18(Counter counter) {
counter.inc();
}
void visitorDispatch18(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub18(this, arg);
}
}
class Sub19 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch19(Counter counter) {
counter.inc();
}
void visitorDispatch19(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub19(this, arg);
}
}
class Sub20 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch20(Counter counter) {
counter.inc();
}
void visitorDispatch20(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub20(this, arg);
}
}
class Sub21 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch21(Counter counter) {
counter.inc();
}
void visitorDispatch21(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub21(this, arg);
}
}
class Sub22 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch22(Counter counter) {
counter.inc();
}
void visitorDispatch22(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub22(this, arg);
}
}
class Sub23 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch23(Counter counter) {
counter.inc();
}
void visitorDispatch23(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub23(this, arg);
}
}
class Sub24 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch24(Counter counter) {
counter.inc();
}
void visitorDispatch24(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub24(this, arg);
}
}
class Sub25 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch25(Counter counter) {
counter.inc();
}
void visitorDispatch25(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub25(this, arg);
}
}
class Sub26 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch26(Counter counter) {
counter.inc();
}
void visitorDispatch26(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub26(this, arg);
}
}
class Sub27 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch27(Counter counter) {
counter.inc();
}
void visitorDispatch27(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub27(this, arg);
}
}
class Sub28 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch28(Counter counter) {
counter.inc();
}
void visitorDispatch28(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub28(this, arg);
}
}
class Sub29 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch29(Counter counter) {
counter.inc();
}
void visitorDispatch29(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub29(this, arg);
}
}
class Sub30 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch30(Counter counter) {
counter.inc();
}
void visitorDispatch30(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub30(this, arg);
}
}
class Sub31 extends Base32 {
@override
void dynamicDispatch(Counter counter) {
counter.inc();
}
void ifThenElseDispatch31(Counter counter) {
counter.inc();
}
void visitorDispatch31(Counter counter) {
counter.inc();
}
@override
R accept<R, A>(Visitor32<R, A> visitor, A arg) {
return visitor.visitSub31(this, arg);
}
}
List<Base32> createData32() {
return [
Sub0(),
Sub1(),
Sub2(),
Sub3(),
Sub4(),
Sub5(),
Sub6(),
Sub7(),
Sub8(),
Sub9(),
Sub10(),
Sub11(),
Sub12(),
Sub13(),
Sub14(),
Sub15(),
Sub16(),
Sub17(),
Sub18(),
Sub19(),
Sub20(),
Sub21(),
Sub22(),
Sub23(),
Sub24(),
Sub25(),
Sub26(),
Sub27(),
Sub28(),
Sub29(),
Sub30(),
Sub31(),
];
}
void incByDynamicDispatch32(Base32 base, Counter counter) {
base.dynamicDispatch(counter);
}
void incByIfThenElseDispatch32(Base32 base, Counter counter) {
if (base is Sub0) {
base.ifThenElseDispatch0(counter);
} else if (base is Sub1) {
base.ifThenElseDispatch1(counter);
} else if (base is Sub2) {
base.ifThenElseDispatch2(counter);
} else if (base is Sub3) {
base.ifThenElseDispatch3(counter);
} else if (base is Sub4) {
base.ifThenElseDispatch4(counter);
} else if (base is Sub5) {
base.ifThenElseDispatch5(counter);
} else if (base is Sub6) {
base.ifThenElseDispatch6(counter);
} else if (base is Sub7) {
base.ifThenElseDispatch7(counter);
} else if (base is Sub8) {
base.ifThenElseDispatch8(counter);
} else if (base is Sub9) {
base.ifThenElseDispatch9(counter);
} else if (base is Sub10) {
base.ifThenElseDispatch10(counter);
} else if (base is Sub11) {
base.ifThenElseDispatch11(counter);
} else if (base is Sub12) {
base.ifThenElseDispatch12(counter);
} else if (base is Sub13) {
base.ifThenElseDispatch13(counter);
} else if (base is Sub14) {
base.ifThenElseDispatch14(counter);
} else if (base is Sub15) {
base.ifThenElseDispatch15(counter);
} else if (base is Sub16) {
base.ifThenElseDispatch16(counter);
} else if (base is Sub17) {
base.ifThenElseDispatch17(counter);
} else if (base is Sub18) {
base.ifThenElseDispatch18(counter);
} else if (base is Sub19) {
base.ifThenElseDispatch19(counter);
} else if (base is Sub20) {
base.ifThenElseDispatch20(counter);
} else if (base is Sub21) {
base.ifThenElseDispatch21(counter);
} else if (base is Sub22) {
base.ifThenElseDispatch22(counter);
} else if (base is Sub23) {
base.ifThenElseDispatch23(counter);
} else if (base is Sub24) {
base.ifThenElseDispatch24(counter);
} else if (base is Sub25) {
base.ifThenElseDispatch25(counter);
} else if (base is Sub26) {
base.ifThenElseDispatch26(counter);
} else if (base is Sub27) {
base.ifThenElseDispatch27(counter);
} else if (base is Sub28) {
base.ifThenElseDispatch28(counter);
} else if (base is Sub29) {
base.ifThenElseDispatch29(counter);
} else if (base is Sub30) {
base.ifThenElseDispatch30(counter);
} else if (base is Sub31) {
base.ifThenElseDispatch31(counter);
}
}
const Visitor32<void, Counter> visitor = CounterVisitor32();
void incByVisitorDispatch32(Base32 base, Counter counter) {
base.accept(visitor, counter);
}
abstract class Visitor32<R, A> {
R visitSub0(Sub0 sub, A arg);
R visitSub1(Sub1 sub, A arg);
R visitSub2(Sub2 sub, A arg);
R visitSub3(Sub3 sub, A arg);
R visitSub4(Sub4 sub, A arg);
R visitSub5(Sub5 sub, A arg);
R visitSub6(Sub6 sub, A arg);
R visitSub7(Sub7 sub, A arg);
R visitSub8(Sub8 sub, A arg);
R visitSub9(Sub9 sub, A arg);
R visitSub10(Sub10 sub, A arg);
R visitSub11(Sub11 sub, A arg);
R visitSub12(Sub12 sub, A arg);
R visitSub13(Sub13 sub, A arg);
R visitSub14(Sub14 sub, A arg);
R visitSub15(Sub15 sub, A arg);
R visitSub16(Sub16 sub, A arg);
R visitSub17(Sub17 sub, A arg);
R visitSub18(Sub18 sub, A arg);
R visitSub19(Sub19 sub, A arg);
R visitSub20(Sub20 sub, A arg);
R visitSub21(Sub21 sub, A arg);
R visitSub22(Sub22 sub, A arg);
R visitSub23(Sub23 sub, A arg);
R visitSub24(Sub24 sub, A arg);
R visitSub25(Sub25 sub, A arg);
R visitSub26(Sub26 sub, A arg);
R visitSub27(Sub27 sub, A arg);
R visitSub28(Sub28 sub, A arg);
R visitSub29(Sub29 sub, A arg);
R visitSub30(Sub30 sub, A arg);
R visitSub31(Sub31 sub, A arg);
}
class CounterVisitor32 implements Visitor32<void, Counter> {
const CounterVisitor32();
@override
void visitSub0(Sub0 sub, Counter counter) {
sub.visitorDispatch0(counter);
}
@override
void visitSub1(Sub1 sub, Counter counter) {
sub.visitorDispatch1(counter);
}
@override
void visitSub2(Sub2 sub, Counter counter) {
sub.visitorDispatch2(counter);
}
@override
void visitSub3(Sub3 sub, Counter counter) {
sub.visitorDispatch3(counter);
}
@override
void visitSub4(Sub4 sub, Counter counter) {
sub.visitorDispatch4(counter);
}
@override
void visitSub5(Sub5 sub, Counter counter) {
sub.visitorDispatch5(counter);
}
@override
void visitSub6(Sub6 sub, Counter counter) {
sub.visitorDispatch6(counter);
}
@override
void visitSub7(Sub7 sub, Counter counter) {
sub.visitorDispatch7(counter);
}
@override
void visitSub8(Sub8 sub, Counter counter) {
sub.visitorDispatch8(counter);
}
@override
void visitSub9(Sub9 sub, Counter counter) {
sub.visitorDispatch9(counter);
}
@override
void visitSub10(Sub10 sub, Counter counter) {
sub.visitorDispatch10(counter);
}
@override
void visitSub11(Sub11 sub, Counter counter) {
sub.visitorDispatch11(counter);
}
@override
void visitSub12(Sub12 sub, Counter counter) {
sub.visitorDispatch12(counter);
}
@override
void visitSub13(Sub13 sub, Counter counter) {
sub.visitorDispatch13(counter);
}
@override
void visitSub14(Sub14 sub, Counter counter) {
sub.visitorDispatch14(counter);
}
@override
void visitSub15(Sub15 sub, Counter counter) {
sub.visitorDispatch15(counter);
}
@override
void visitSub16(Sub16 sub, Counter counter) {
sub.visitorDispatch16(counter);
}
@override
void visitSub17(Sub17 sub, Counter counter) {
sub.visitorDispatch17(counter);
}
@override
void visitSub18(Sub18 sub, Counter counter) {
sub.visitorDispatch18(counter);
}
@override
void visitSub19(Sub19 sub, Counter counter) {
sub.visitorDispatch19(counter);
}
@override
void visitSub20(Sub20 sub, Counter counter) {
sub.visitorDispatch20(counter);
}
@override
void visitSub21(Sub21 sub, Counter counter) {
sub.visitorDispatch21(counter);
}
@override
void visitSub22(Sub22 sub, Counter counter) {
sub.visitorDispatch22(counter);
}
@override
void visitSub23(Sub23 sub, Counter counter) {
sub.visitorDispatch23(counter);
}
@override
void visitSub24(Sub24 sub, Counter counter) {
sub.visitorDispatch24(counter);
}
@override
void visitSub25(Sub25 sub, Counter counter) {
sub.visitorDispatch25(counter);
}
@override
void visitSub26(Sub26 sub, Counter counter) {
sub.visitorDispatch26(counter);
}
@override
void visitSub27(Sub27 sub, Counter counter) {
sub.visitorDispatch27(counter);
}
@override
void visitSub28(Sub28 sub, Counter counter) {
sub.visitorDispatch28(counter);
}
@override
void visitSub29(Sub29 sub, Counter counter) {
sub.visitorDispatch29(counter);
}
@override
void visitSub30(Sub30 sub, Counter counter) {
sub.visitorDispatch30(counter);
}
@override
void visitSub31(Sub31 sub, Counter counter) {
sub.visitorDispatch31(counter);
}
}