Commit Graph

233 Commits

Author SHA1 Message Date
Ron Pinkas
700d53687c 2001-01-09 10:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Fixed bug with #include and INCLUDE Env Var processing.
     % Removed some unused vars.
2001-01-09 18:00:40 +00:00
Ron Pinkas
003c498444 2001-01-08 12:35 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Added support for leading and traing WS before/after #.
     * Extra logic for [...] within # directives in ProcessFile()
     * Fixed logic of // and && terminating at EOF.
2001-01-08 20:41:32 +00:00
Ron Pinkas
99edf1b0f4 2001-01-08 02:10 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Few corrections in NextExp() and MatchRule().
2001-01-08 10:14:26 +00:00
Ron Pinkas
afb1e3f15d 2001-01-07 13:40 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Optimized ciclic detection logic.
2001-01-07 21:39:54 +00:00
Ron Pinkas
3ff96f6977 2001-01-05 09:57 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Corrected possible case sensitive issue RP_Dot.ch -> rp_dot.ch (Thanx to Dave Pearson)
     * Corrected @ 24, ... -> @ MaxRow(), ...                         (Thanx to Dave Pearson)
2001-01-05 17:59:13 +00:00
Ron Pinkas
fa721257a4 2001-12-03 10:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
   * source/pp/ppcore.c
     ! Fixed Array Index support after '.' (Macro Terminator).
2001-01-03 17:33:49 +00:00
Luiz Rafael Culik
471902aaba See changelog 2001-01-01 22:15 GMT -3 2001-01-02 00:07:35 +00:00
Brian Hays
15540f9678 2000-12-29 01:30 UTC-0800 Brian Hays <bhays@abacuslaw.com> 2000-12-29 09:27:52 +00:00
Maurilio Longo
c18a43c8aa 2000-12-18 16:55 GMT+1 Maurilio Longo <maurilio.longo@libero.it>
* source/rtl/memoedit.prg
     + Added all missing functionalities. Should be 100% compatible (tested very little)
   * source/rtl/teditor.prg
     * little changes to make it work better with memoedit.prg. Removed cUdF parameter from
       ::New() method.
2000-12-18 15:56:01 +00:00
Ron Pinkas
e7a8e2bda9 Fixed Handling of [] strings in ProcessFile() 2000-12-09 19:33:06 +00:00
Brian Hays
369db77340 2000-12-06 16:09 UTC-0800 Brian Hays <bhays@abacuslaw.com> 2000-12-07 00:15:57 +00:00
Maurilio Longo
118781b4a6 2000-12-04 17:54 GMT+1 Maurilio Longo <maurilio.longo@libero.it>
* source/rtl/tbrowse.prg
        * I've rewritten from scratch stabilization and movement keys handling.
          They were simply broken in previous TBrowse. They are now nearly 100% clipper compatible.
          DBU now works correctly when lastrec() + 1 is reached and leaved.
          ::stable state and ::HitTop or ::HitBottom were wrongly set _before_ stabilization and not
          during as it should. ::GoBottom() was not calling ::goBottomBlock.
          Movement handling methods were calling ::skipBlock and they should not, this was
          causing unneeded skipping being requested to data source.
          I hope these last changes have fixed TBrowse class. Please test it extensively.
2000-12-04 17:11:46 +00:00
Brian Hays
7c54d69bd7 2000-11-28 11:40 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-11-28 19:45:49 +00:00
Maurilio Longo
765dd1b8b0 2000-11-24 19:22 GMT+1 Maurilio Longo <maurilio.longo@libero.it> 2000-11-24 18:26:13 +00:00
Maurilio Longo
26ab0079f0 2000-11-21 17:42 GMT+1 Maurilio Longo <maurilio.longo@libero.it> 2000-11-21 16:45:36 +00:00
Maurilio Longo
2660ad1d24 2000-11-20 23:11 GMT+1 Maurilio Longo <maurilio.longo@libero.it> 2000-11-20 22:14:00 +00:00
Maurilio Longo
6bf1876273 2000-11-20 17:38 GMT+1 Maurilio Longo <maurilio.longo@libero.it> 2000-11-20 16:43:34 +00:00
Maurilio Longo
1573328aa8 2000-11-17 16:40 GMT+1 Maurilio Longo <maurilio.longo@libero.it> 2000-11-17 15:41:48 +00:00
Ron Pinkas
cf8b3caf7c 2000-11-14 02:35 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     ! Corrected few pre-processor bugs.
     ! Corrected DOT multi-line support.
   * contrib/dot/rp_dot.ch
     + Added Clipper and Harbour support for GET

   * source/pp/ppcore.c
     ! Removed redundant line in md_strAt() whiched caused bug with tanslating within [] bracket expressions.
2000-11-14 10:37:00 +00:00
Brian Hays
751289b692 2000-11-13 16:18 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-11-14 00:17:48 +00:00
Ryszard Glab
dc01ccd135 ChangeLog 2000-11-12 15:20 UTC+0100 2000-11-12 13:10:12 +00:00
Ron Pinkas
d47c50295a 2000-11-11 23:35 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     ! Corrected few pre-processor bugs.
2000-11-12 07:37:35 +00:00
Brian Hays
0f85576404 2000-11-08 11:28 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-11-08 19:31:27 +00:00
Ron Pinkas
33ce57e6f7 2000-11-02 20:35 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     ! Corrected minor bug with [] string delimiters.

   * contrib/dot/rp_dot.ch
     + Added rule for EXIT
2000-11-03 04:41:44 +00:00
Brian Hays
066236c511 2000-11-01 15:00 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-11-01 23:00:35 +00:00
Maurilio Longo
34c4ff9b50 2000-10-30 18:51 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-10-30 17:52:56 +00:00
Maurilio Longo
8177403951 2000-10-27 18:05 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-10-27 16:13:12 +00:00
Brian Hays
041501bd84 2000-10-25 23:55 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-10-26 07:06:13 +00:00
Maurilio Longo
839949be1a 2000-10-23 23:29 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-10-23 21:31:36 +00:00
Maurilio Longo
c9790e09a3 2000-10-23 18:15 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-10-23 16:18:42 +00:00
Ron Pinkas
5fc2d50895 2000-10-22 09:05 UTC+0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/simplex.c
     ! Corrrected bug reported by Luiz regarding menuto.prg

   * source/compiler/harbour.slx
     ! Corrected 1 debug trace message.

   * contrib/dot/pp.prg
     ! Corrected "Unbalanced '{'" warning reported by John.
     ! Corrected 2 typos in variable names reported by John.
2000-10-22 16:10:16 +00:00
Ron Pinkas
48f924b356 2000-10-20 00:30 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Forced uppercase and trim of restricted words.
2000-10-20 07:34:11 +00:00
Ron Pinkas
24ee8f1d78 Minor correction 2000-10-20 06:39:30 +00:00
Ron Pinkas
538fee3ae7 2000-10-19 23:15 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     * Minor corrections.
2000-10-20 06:16:41 +00:00
Ron Pinkas
3c03060c69 2000-10-19 22:00 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     ! Fixed checking of stoppers for #XCOMMAND/#XTRANSLATE
       /* No longer known issues - I think it's ready for serious testing ;-) */
2000-10-20 05:05:38 +00:00
Ron Pinkas
f83f7d5134 2000-10-19 19:40 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     ! Added logic to support multi-word stoppers needed by multi-word restricted list, like
      [ <lClick: ON CLICK, ON LEFT CLICK> <uLClick> ]
      /* Only 1 known error remains in processing of fwh/samples/fwbrow.prg */

   * include/hbclass.ch
     * Temprarily removed \ preceding < of not existing match markers, in nested # directive in result.
       /* Need to be readded once PP is fixed. */
2000-10-20 02:41:53 +00:00
Ron Pinkas
a0d9788264 ! Corrected bug with #else 2000-10-19 17:59:49 +00:00
Ron Pinkas
b60bc91148 ! Corrected bug with nested #if...
! Corrected handling of EOF.
     /* 2 minor bugs in PP of fwh/samples/fwbrow still pending. */
2000-10-19 17:34:50 +00:00
Ron Pinkas
37b5b14894 Corrected few errors in matching logic, and 1 error in compilation logic.
Tested to correctly pre-process FiveWin code, sample used: FWBrow.prg
which uses many of the FiveWin classes.

Reports of errors/incorrect pre-processing will be appreciated.
2000-10-19 08:13:02 +00:00
Ron Pinkas
b0277b2fbc 2000-10-18 01:30 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
      ! More corrections and refinments in pre-processing
      * Improved handling of command line parameters (no longer requires -P, -CCH doesn't require -U)
      ! Corrected handling of file extension.

    * include/hbclass.ch
      * Corrected <MethodName> to \<MethodName> when result marker not a match marker.
      * Corrected <params,...> to <param> (result marker used match marker format).
2000-10-18 08:29:28 +00:00
Ron Pinkas
1e28561f7b 2000-10-17 11:35 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
      ! Fixed few more associations within NextExp()
      + Added logic to auto create vars refernced in command line.
	/* Now the DOT prompt is much more functional, in both Clipper and Harbour. */
2000-10-17 18:38:23 +00:00
Maurilio Longo
7d0080ab16 2000-10-17 18:21 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-10-17 16:23:29 +00:00
Ron Pinkas
9f21a3548c 2000-10-17 00:55 UTC+0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot
      ! contrib/dot/pp.prg
	! Fixed bug with processing of #include within #ifdef
	! Fixed handling of unterminated strings crossing file read buffer boundaries.
	! Fixed association of := and -> within NextExp()
	  /* I'm now able to PP my largest prg without any difference from Clipper (other then minor spacing
             differences). */
2000-10-17 08:06:33 +00:00
Ron Pinkas
d02fae6949 Added copy right notice. 2000-10-16 11:15:22 +00:00
Ron Pinkas
385841433e 1st version of a self contained Clipper/Harbour Pre-Processor and a "DOT" prompt
environment, written in the Clipper language.

The pre-processor is speced to be 100% Clipper/Harbour compatible, though
further testing is needed. It supports all of the Clipper PP Directives, Match
Markers, and Result Markers. It utilizes a much more aggresive compilation of the
PP rules, and thus uses a much simpler "interpreter" and output algoritems.

This file also offers a "DOT" prompt environment which can execute most of
the Clipper/Harbour syntax and supports all of the pre-processor directives
thus supporting any user defined commands.

Current exceptions are statements like:

LOCAL, STATIC, PRIVATE PUBLIC, FUNCTION PROCEDURE etc.

as well as flow control constructs like IF,ELSE,END,WHILE,CASE,FOR,NEXT etc.

This is a very early stage of the "DOT" environment, but it does demonstrate
the architecture, and already provides the core functionality.

The "DOT" mode, automatically loades rp_dot.ch to implement additional commands
on top of the built in rules (burned-in Clipper std.ch compatible).

Usage:

PP [PrgName] [-P][-U][-CCH][-DE|M|P]

   PrgName - Source file (PRG) to compile
   -P      - Will produce a PP$ file, which is the exact equivalent of the PPO file.
   -U      - Will excluse the burned-in standard rules
   -D      - Will produe debug trace information when folowed by E, M, or P
             E - Will trace the Expression parser
             M - Will trace the rule Matching system.
             P - Will trace the outPut system.

   -CCH    - Will produce a .CCH file which is a compiled version of any rules
             compiled. This flag *should* be used with the -U flag.

If no parameters are provided, the program will enter the "DOT" mode.

I hope this file can provide thise intersted with a better understanding of the
Clipper Pre-Processor structure and logic.
2000-10-16 11:04:23 +00:00
Brian Hays
38c2809056 2000-10-15 12:45 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-10-15 07:56:45 +00:00
Brian Hays
ee2253880c 2000-10-13 0:33 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-10-13 07:38:04 +00:00
Alexander S.Kresin
b5641e30ee 2000-10-12 10:30 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2000-10-12 06:31:46 +00:00
Brian Hays
b705127b49 2000-10-11 3:58 UTC+0800 Brian Hays <bhays@abacuslaw.com> 2000-10-11 23:03:21 +00:00
Alexander S.Kresin
a4eb34d33a 2000-10-10 16:12 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2000-10-10 12:13:50 +00:00