* (all files)
* stripped svn header
* minor cleanups
; use following command to find out the history of files:
git log
git log --follow
git blame
git annotate
65 lines
1.0 KiB
Plaintext
65 lines
1.0 KiB
Plaintext
// Testing Harbour For Next loops for Clipper compatibility
|
|
|
|
// ; Donated to the public domain by
|
|
// Viktor Szakats (harbour syenar.net)
|
|
|
|
// TODO: add test for "step 0"
|
|
|
|
STATIC s_nFrom
|
|
STATIC s_nTo
|
|
STATIC s_nStep
|
|
|
|
PROCEDURE Main()
|
|
|
|
LOCAL array
|
|
LOCAL tmp, n
|
|
|
|
? "Testing Harbour For Next loops."
|
|
|
|
array := { ;
|
|
{ 1, 10, 1 }, ;
|
|
{ 10, 1, -1 }, ;
|
|
{ 1, 10, -1 }, ;
|
|
{ 10, 1, 1 }, ;
|
|
{ 1, 10, 4 }, ;
|
|
{ 10, 1, -4 }, ;
|
|
{ 1, 10, -4 }, ;
|
|
{ 10, 1, 4 } }
|
|
|
|
FOR tmp := 1 TO Len( array )
|
|
|
|
s_nFrom := array[ tmp ][ 1 ]
|
|
s_nTo := array[ tmp ][ 2 ]
|
|
s_nStep := array[ tmp ][ 3 ]
|
|
|
|
? ;
|
|
" From:", s_nFrom, ;
|
|
" To:", s_nTo, ;
|
|
" Step:", s_nStep
|
|
|
|
FOR n := Eval( {|| ValFrom() } ) TO Eval( {|| ValTo() } ) STEP Eval( {|| ValStep() } )
|
|
? "Exec", n
|
|
NEXT
|
|
|
|
NEXT
|
|
|
|
RETURN
|
|
|
|
STATIC FUNCTION ValFrom()
|
|
|
|
? "From"
|
|
|
|
RETURN s_nFrom
|
|
|
|
STATIC FUNCTION ValTo()
|
|
|
|
? "To"
|
|
|
|
RETURN s_nTo
|
|
|
|
STATIC FUNCTION ValStep()
|
|
|
|
? "Step"
|
|
|
|
RETURN s_nStep
|