home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 24 / CD_ASCQ_24_0995.iso / vrac / vbos201.zip / README.TXT < prev    next >
Text File  |  1995-04-23  |  6KB  |  147 lines

  1. VBossAPI.DLL v1.0 rev 2.01
  2. Copyright ⌐ 1995, Greg Truesdell
  3. CIS    : 74131,2175
  4. Internet: 74131.2175@compuserve.com
  5. =========================================================================
  6.    SEE VBOSSAPI.HLP TOPIC "Getting Started" FOR IMPORTANT INFORMATION!
  7. =========================================================================
  8.  
  9. As of Revision 1.80 VBossAPI supports multiple instances!
  10.  
  11. INCLUDES A FULLY FUNCTIONAL VARIABLE EXPRESSION EVALUATOR!
  12.  
  13. PLUS: A complete example including modules you can use in your own
  14. programs.  This example application has been expanded and updated to
  15. include label and conditional flow control.
  16.  
  17. As of revision 1.61b, the COMMA character is now a reserved operator.
  18. As of revision 1.62 the following new functions are added:
  19.     ParseUntil()
  20.     TestNumExpr()
  21.  
  22. ARCHIVE CONTENTS
  23. ================
  24.  
  25. This archive should include the following files:
  26.  
  27.     readme.txt     The file you are reading
  28.     register.txt   registration form
  29.     vbossapi.bas   Visual Basic Declarations
  30.     vbossapi.dll   The Library
  31.     vbossapi.hlp   The Windows Help file
  32.     sweetpea.zip   An extensive demonstration application
  33.  
  34.  
  35. INTRODUCTION
  36. ============
  37.  
  38. VBossAPI.DLL is a library of functions that help the Visual Basic Programmer 
  39. develop script-parsing applications.  Although it is not a complete set of
  40. tools for compiler design, it is a good set of script processing tools.
  41.  
  42. The functions provided offer both Word-Related and Keyword/Token related 
  43. operations required to implement text parsing and script processing applications.
  44. There are functions for parsing text strings, defining keyword tokens (for 
  45. language-independant scripts) and defining simple variables.  Also included are
  46. functions for storing and loading keyword/token tables.  This allows you to
  47. support several languages without changing the basic code of your application.
  48. Operators (ie: =, (), *, / etc) are supported internally to simplify the
  49. development process.
  50.  
  51. THEORY OF OPERATION
  52. ===================
  53.  
  54. TOKENS, KEYWORDS and OPERATORS
  55. ------------------------------
  56.  
  57. VBossAPI.DLL allows you to relate a text string (ie: BEGIN) with a token value
  58. (ie: 100).  Operators (ie: !@#$%^&*()-=+{}[], etc) use predefined tokens.  Word
  59. delimiters are defined internally (all characters from &H01 to &H20)
  60. for token related functions.  All you need to do is define the keywords you
  61. want to use.
  62.  
  63. Once you have defined the keywords and their tokens, you then write an
  64. interpreter to operate on sequences of tokens (Syntax).  VBossAPI.DLL provides
  65. the core functions required for scanning text and determining the type of 
  66. word or keyword found.
  67.  
  68. For example: If you were to define the following:
  69.  
  70.     Keyword        Token
  71.     --------------- ------
  72.         DIM             100
  73.         INTEGER         101
  74.         AS              102
  75.  
  76. and you passed a text string with the following text in it:
  77.  
  78.     Dim Counter As Integer
  79.     Counter=10*3
  80.  
  81. the VBossAPI.DLL NextToken() function, on subsequent calls, would return:
  82.  
  83.     Token   Keyword
  84.     -----   ----------
  85.     100     DIM
  86.     -3      COUNTER     (-3 or NT_TOKEN_NOTFOUND)
  87.     102     AS
  88.     101     INTEGER
  89.     
  90.     ... at this point your code would know enough to define the variable.
  91.     ... (See AddVariable())
  92.  
  93.     -5    COUNTER        (-5 or NT_VARIABLE_FOUND)
  94.     22    =        (Pre-defined operator token)
  95.     -3    10        (-3 or NT_TOKEN_NOTFOUND In this case, a CONSTANT)
  96.     3    *        (Pre-defined operator token)
  97.     -3    3        (-3 or NT_TOKEN_NOTFOUND In this case, a CONSTANT)
  98.     -1            (-1 or NT_PAST_EOL or End of the Program)
  99.  
  100. The token values tell your program what action to take.  The keyword contents
  101. provide enough information to determine how they should be used.  If the token
  102. value is negative, the current keyword is not a reserved keyword; it is most
  103. likely a constant (ie: number) or a variable name.
  104.  
  105. All of the dirty work concerned with parsing the language components is handled for 
  106. you by the token related functions.  And whenever a defined variable is encountered 
  107. in the script, the NextToken() function let's you know that is a variable.  All you
  108. need to do is get its value and data type with the GetVariable() call.
  109.  
  110. WORD and TEXT PARSING OPERATIONS
  111. --------------------------------
  112.  
  113. VBossAPI includes a complete set of word (text fragments) parsing functions.  You
  114. can use these with or without the token parsing functions.  Beyond the obvious
  115. word and line counting possibilities you can implement content and context 
  116. sensitive text formatting.  In concert with token related functions, you can build
  117. source code formatters, parsers and reporters.
  118.  
  119. Once you are no longer burdened with the details of parsing and separating text 
  120. fragments you are freed to concentrate on what functionality you want in your
  121. program.
  122.  
  123.  
  124. BEST OF ALL, IT'S INEXPENSIVE!
  125. ==============================
  126.  
  127. For the cost of less than an hours work, you can have the whole set.  The functions
  128. are clean and fast. And, once registered, you are free to distribute the DLL with
  129. your applications without royalties (just so long as you do not distribute it as
  130. part of a product that performs the same basic functions.)
  131.  
  132. Also, any problems or suggestions concerning the library will be responded to quickly 
  133. and courteously.
  134.  
  135. FOR MORE INFORMATION
  136. ====================
  137.  
  138. You can now register VBossAPI.DLL On-Line with CompuServe.  Use GO SWREG and
  139. select ID #4362.
  140.  
  141. See the REGISTER.TXT and VBOSSAPI.HLP files.
  142.  
  143. Please remember that, once you have registered VBossAPI.DLL you MAY NOT distribute,
  144. in any readable form, the registration key sent to you.  The key is a contract
  145. between us and insures that you will recieve continued updates for a supported
  146. product.  Thank you.
  147.