Main.hx 687 B

1234567891011121314151617181920212223242526272829303132
  1. package;
  2. import test.Robot;
  3. import test.RobotFactory;
  4. class Main {
  5. public static function main() {
  6. var robot1 = RobotFactory.buildMathRobot();
  7. var robot2 = RobotFactory.buildGreetRobot(robot1);
  8. var robot3 = RobotFactory.buildManufactureRobot();
  9. robot1.performTask(add);
  10. robot1.performTask(function(a:Int, b:Int):Int {
  11. return a - b;
  12. });
  13. robot2.performTask(function (target:Robot) {
  14. trace('Hello, ${target.toString()}!');
  15. }, () -> {
  16. trace('Cleanup...');
  17. });
  18. robot3.performTask(function (robotType:String) {
  19. trace('Manufacturing ${robotType}...');
  20. return robot2;
  21. });
  22. }
  23. static function add(a:Int, b:Int):Int {
  24. return a + b;
  25. }
  26. }