home *** CD-ROM | disk | FTP | other *** search
/ PC World 1997 November / PCWorld_1997-11_cd.bin / software / programy / komix / DATA.Z / cpp_disp.tcl < prev    next >
Text File  |  1996-06-05  |  2KB  |  57 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. # Copyright (c) 1993-1995 by Cadre Technologies Inc.
  4. #
  5. # This software is furnished under a license and may be used only in
  6. # accordance with the terms of such license and with the inclusion of
  7. # the above copyright notice. This software or any other copies thereof
  8. # may not be provided or otherwise made available to any other person.
  9. # No title to and ownership of the software is hereby transferred.
  10. #
  11. # The information in this software is subject to change without notice
  12. # and should not be construed as a commitment by Cadre Technologies Inc.
  13. #
  14. #---------------------------------------------------------------------------
  15. #
  16. #    File        : @(#)cpp_disp.tcl    2.1
  17. #    Author        : frmo
  18. #    Original date    : 3-3-1993
  19. #    Description    : Pseudo OO dispatch functions
  20. #
  21. #---------------------------------------------------------------------------
  22. #
  23.  
  24. # Pseudo OO programming in Tcl: dispatch functions for "generate",
  25. # "gen_initializer", "gen_class_decl"
  26.  
  27. proc generate {args} {
  28.     set object [lindex $args 0]
  29.     trace_call generate $object $args
  30.     uplevel "[$object get_obj_type]::generate $args"
  31. }
  32.  
  33. proc gen_initializer {args} {
  34.     set object [lindex $args 0]
  35.         trace_call gen_initializer $object $args
  36.     uplevel "[$object get_obj_type]::gen_initializer $args"
  37. }
  38.  
  39. proc gen_class_decl {args} {
  40.     set object [lindex $args 0]
  41.         trace_call gen_class_decl $object $args
  42.     uplevel "[$object get_obj_type]::gen_class_decl $args"
  43. }
  44.  
  45. proc gen_var_decl {args} {
  46.     set object [lindex $args 0]
  47.         trace_call gen_var_decl $object $args
  48.     uplevel "[$object get_obj_type]::gen_var_decl $args"
  49. }
  50.  
  51. proc gen_typedef {args} {
  52.     set object [lindex $args 0]
  53.         trace_call gen_typedef $object $args
  54.         uplevel \
  55.           "[$object get_obj_type]::[$object getMultiplicity]_typedef $args"
  56. }
  57.