home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / debugger / ddd-1.000 / ddd-1 / ddd-1.4b / vsllib / builtin.vsl < prev    next >
Encoding:
Text File  |  1995-05-01  |  4.1 KB  |  112 lines

  1. // $Id: builtin.vsl,v 1.1.1.1 1995/05/01 15:48:44 zeller Exp $
  2. // Builtin VSL functions
  3.  
  4. // Copyright (C) 1993 Technische Universitaet Braunschweig, Germany.
  5. // Written by Andreas Zeller (zeller@ips.cs.tu-bs.de).
  6. // 
  7. // This file is part of the NORA Library.
  8. // 
  9. // The NORA Library is free software; you can redistribute it and/or
  10. // modify it under the terms of the GNU Library General Public
  11. // License as published by the Free Software Foundation; either
  12. // version 2 of the License, or (at your option) any later version.
  13. // 
  14. // The NORA Library is distributed in the hope that it will be useful,
  15. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  17. // See the GNU Library General Public License for more details.
  18. // 
  19. // You should have received a copy of the GNU Library General Public
  20. // License along with the NORA Library -- see the file COPYING.LIB.
  21. // If not, write to the Free Software Foundation, Inc.,
  22. // 675 Mass Ave, Cambridge, MA 02139, USA.
  23. // 
  24. // NORA is an experimental inference-based software development
  25. // environment. Contact nora@ips.cs.tu-bs.de for details.
  26.  
  27. // Internal names
  28.  
  29. // Operators
  30. __op_halign(...);        // &   -- horizontal alignment
  31. __op_valign(...);        // |   -- vertical alignment
  32. __op_ualign(...);        // ^   -- transparent alignment
  33. __op_talign(...);        // ~   -- textual alignment
  34. __op_plus(...);            // +   -- box arithmetic
  35. __op_mult(...);            // *   -- box arithmetic
  36. __op_cons(...);            // ::  -- list concatenation
  37. __op_minus(a, b);        // -   -- box arithmetic
  38. __op_div(a, b);            // /   -- box arithmetic
  39. __op_mod(a, b);            // %   -- box arithmetic
  40. __op_eq(a, b);            // =   -- box arithmetic
  41. __op_ne(a, b);            // !=  -- box arithmetic
  42. __op_gt(a, b);            // >   -- box arithmetic
  43. __op_ge(a, b);            // >=  -- box arithmetic
  44. __op_lt(a, b);            // <   -- box arithmetic
  45. __op_le(a, b);            // <=  -- box arithmetic
  46. __op_not(a);            // not -- box arithmetic
  47.  
  48. // Functions
  49. __hspace(box);                  // Horizontal space
  50. __vspace(box);            // Vertical space
  51. __hfix(box);            // Fix horizontal extent
  52. __vfix(box);            // Fix vertical extent
  53. __rise(linethickness);        // Diagonal `/'
  54. __fall(linethickness);        // Diagonal `\`
  55. __arc(start, length, linethickness); // Arc
  56. __square(box);            // A square with BOX size
  57. __tag(box);            // A tag box
  58. __string(box);            // The string in BOX
  59. __font(box, font);        // Set the font of BOX to FONT
  60. __fontfix(box);            // Freeze the font of BOX
  61.  
  62. // Constants
  63. __fill();            // Stretchable white space
  64. __rule();            // Stretchable black space
  65. __diag();            // Diagnostic box
  66.  
  67. // Error handling
  68. __fail(...);            // Issue an error message
  69. __undef();            // A box standing for `undefined content'
  70.  
  71.  
  72. // Public names
  73.  
  74. // Operators
  75. (&)(...)   = __op_halign(...);
  76. (|)(...)   = __op_valign(...);
  77. (^)(...)   = __op_ualign(...);
  78. (~)(...)   = __op_talign(...);
  79. (+)(...)   = __op_plus(...);
  80. (*)(...)   = __op_mult(...);
  81. (::)(...)  = __op_cons(...);
  82. (-)(a, b)  = __op_minus(a, b);
  83. (/)(a, b)  = __op_div(a, b);
  84. (%)(a, b)  = __op_mod(a, b);
  85. (=)(a, b)  = __op_eq(a, b);
  86. (<>)(a, b) = __op_ne(a, b);
  87. (>)(a, b)  = __op_gt(a, b);
  88. (>=)(a, b) = __op_ge(a, b);
  89. (<)(a, b)  = __op_lt(a, b);
  90. (<=)(a, b) = __op_le(a, b);
  91. (not)(a)   = __op_not(a);
  92.  
  93. // Other functions
  94. hspace(box)                       = __hspace(box);
  95. vspace(box)                       = __vspace(box);
  96. hfix(box)                         = __hfix(box);
  97. vfix(box)                         = __vfix(box);
  98. rise(linethickness)               = __rise(linethickness);
  99. fall(linethickness)               = __fall(linethickness);
  100. arc(start, length, linethickness) = __arc(start, length, linethickness);
  101. square(box)                       = __square(box);
  102. tag(box)                          = __tag(box);
  103. string(box)                       = __string(box);
  104. font(box, font)                   = __font(box, font);
  105. fontfix(box)                      = __fontfix(box);
  106. fill()                            = __fill();
  107. rule()                            = __rule();
  108. diag()                            = __diag();
  109. fail()                            = __fail();
  110. fail(message)                     = __fail(message);
  111. undef()                           = __undef();
  112.