tinheritance.nim 662 B

123456789101112131415161718192021222324252627282930
  1. discard """
  2. msg: '''Hello fred , managed by sally
  3. Hello sally , managed by bob'''
  4. """
  5. # bug #3973
  6. type
  7. EmployeeCode = enum
  8. ecCode1,
  9. ecCode2
  10. Person* = object of RootObj
  11. name* : string
  12. last_name*: string
  13. Employee* = object of Person
  14. empl_code* : EmployeeCode
  15. mgr_name* : string
  16. proc test() =
  17. var
  18. empl1 = Employee(name: "fred", last_name: "smith", mgr_name: "sally", empl_code: ecCode1)
  19. empl2 = Employee(name: "sally", last_name: "jones", mgr_name: "bob", empl_code: ecCode2)
  20. echo "Hello ", empl1.name, " , managed by ", empl1.mgr_name
  21. echo "Hello ", empl2.name, " , managed by ", empl2.mgr_name
  22. static:
  23. test()