* extras/hbvpdf/hbvpdf.hbx
! two more corrections
* contrib/gtwvg/tests/_dyndlgs.prg
* contrib/hbct/doc/en/finan.txt
* contrib/hbct/readme.txt
* contrib/hbct/tests/asciisum.prg
* contrib/hbct/tests/trig.prg
* contrib/hbfoxpro/dll.prg
* contrib/hbhttpd/core.prg
* contrib/hbhttpd/widgets.prg
* contrib/hbmisc/fcomma.prg
* contrib/hbmlzo/tests/test.prg
* contrib/hbmxml/tests/custom.prg
* contrib/hbmzip/readme.txt
* contrib/hbnf/nwuid.prg
* contrib/hbnf/vidcur.prg
* contrib/hbtip/client.prg
* contrib/hbwin/tests/olesrv1.prg
* contrib/hbwin/tests/testprn.prg
* contrib/xhb/cstruct.prg
* contrib/xhb/hjwindow.prg
* contrib/xhb/hterrsys.prg
* contrib/xhb/htjlist.prg
* contrib/xhb/htmutil.prg
* contrib/xhb/tests/decode.prg
* contrib/xhb/xhberr.prg
* doc/cmdline.txt
* doc/en/objfunc.txt
* doc/en/set.txt
* doc/en/string.txt
* doc/pragma.txt
* extras/gfspell/spell.prg
* extras/gtwvw/docs/gtwvw.txt
* extras/gtwvw/tests/wvwtest9.prg
* extras/hbvpdf/core.prg
* extras/hbvpdf/fonts.prg
* extras/hbvpdf/tests/pdf_demo.prg
* extras/httpsrv/cgifunc.prg
* extras/httpsrv/home/counter.html
* extras/httpsrv/home/testxmldb.html
* extras/httpsrv/session.prg
* extras/httpsrv/uhttpd.prg
* tests/base64.prg
* tests/boxtest.prg
* tests/db_brows.prg
* tests/ddate.prg
* tests/inherit.prg
* tests/langmsg.prg
* tests/mathtest.prg
* tests/memtst.prg
* tests/readhrb.prg
* tests/switch.prg
* tests/testsha2.prg
* tests/testwarn.prg
* tests/tstdbi.prg
* tests/utf8at.prg
* utils/hbtest/hbtest.prg
* utils/hbtest/rt_class.prg
* utils/hbtest/rt_date.prg
* utils/hbtest/rt_hvma.prg
* utils/hbtest/rt_math.prg
* utils/hbtest/rt_misc.prg
* utils/hbtest/rt_trans.prg
* website/news.html
* website/news1.html
* website/samples.html
* website/samples/arreval.html
* website/samples/codebl.prg.html
* website/samples/dates3.html
* website/samples/switch.prg.html
* website/samples/testcgi.prg.html
* website/samples/tstmacro.prg.html
* rerun case fixer script after applying
some fixes, and this time it run fully
automatically.
194 lines
18 KiB
HTML
194 lines
18 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
|
|
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>codebl.prg</TITLE>
|
|
<META http-equiv=Content-Type content="text/html; charset=utf-8">
|
|
<META content="MSHTML 6.00.6000.16386" name=GENERATOR>
|
|
<STYLE type=text/css>
|
|
<!--
|
|
body { color: #000000; background-color: #FFFFFF; }
|
|
.any1-activedot { color: #800080; }
|
|
.any1-comment { color: #008080; }
|
|
.any1-constant { color: #800080; }
|
|
.any1-escapeampersand { color: #00FF00; font-weight: bold; }
|
|
.any1-function { color: #808000; }
|
|
.any1-identifier { color: #000000; }
|
|
.any1-number { color: #FF0000; }
|
|
.any1-preprocessor { }
|
|
.any1-reservedword { color: #800000; }
|
|
.any1-space { }
|
|
.any1-string { color: #0000FF; }
|
|
.any1-symbol { }
|
|
.any1-variable { color: #808000; }
|
|
-->
|
|
</STYLE>
|
|
</HEAD>
|
|
<BODY bgColor=#ffffff>
|
|
<PRE><CODE><SPAN style="FONT: 10pt Courier New"><SPAN class=any1-reservedword>STATIC</SPAN><SPAN class=any1-space> cbStatic
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>Main</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> a := </SPAN><SPAN class=any1-variable>TestBlocks</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>LOCAL</SPAN><SPAN class=any1-space> cb
|
|
|
|
</SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ] ) ) </SPAN><SPAN class=any1-comment>// 23
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>2</SPAN><SPAN class=any1-space> ], </SPAN><SPAN class=any1-number>42</SPAN><SPAN class=any1-space> ) ) </SPAN><SPAN class=any1-comment>// 42
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ] ) ) </SPAN><SPAN class=any1-comment>// 42
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>2</SPAN><SPAN class=any1-space> ], </SPAN><SPAN class=any1-number>15</SPAN><SPAN class=any1-space> ) ) </SPAN><SPAN class=any1-comment>// 15
|
|
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>15</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ] ) ) </SPAN><SPAN class=any1-comment>// 15 15
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>14</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ] ) ) </SPAN><SPAN class=any1-comment>// 14 15
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>42</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>2</SPAN><SPAN class=any1-space> ], </SPAN><SPAN class=any1-number>42</SPAN><SPAN class=any1-space> ) ) </SPAN><SPAN class=any1-comment>// 42 42
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>14</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>2</SPAN><SPAN class=any1-space> ], </SPAN><SPAN class=any1-number>42</SPAN><SPAN class=any1-space> ) ) </SPAN><SPAN class=any1-comment>// 14 42
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>42</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ] ) ) </SPAN><SPAN class=any1-comment>// 42 42
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>14</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( a[ </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ] ) ) </SPAN><SPAN class=any1-comment>// 14 42
|
|
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>GetArray</SPAN><SPAN class=any1-symbol>( @a )
|
|
</SPAN><SPAN class=any1-variable>PrintArray</SPAN><SPAN class=any1-symbol>( @a )
|
|
|
|
</SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-string>"Test for variables passed by reference in a codeblock"</SPAN><SPAN class=any1-space> )
|
|
</SPAN><SPAN class=any1-variable>DetachWithRefer</SPAN><SPAN class=any1-symbol>()
|
|
|
|
</SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-string>"Test for indirect detaching of local variables"</SPAN><SPAN class=any1-space> )
|
|
</SPAN><SPAN class=any1-variable>DetachToStatic</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> )
|
|
</SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>2</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>EVAL</SPAN><SPAN class=any1-symbol>( cbStatic, </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ) )
|
|
</SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>3</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>EVAL</SPAN><SPAN class=any1-symbol>( cbStatic, </SPAN><SPAN class=any1-number>2</SPAN><SPAN class=any1-space> ) )
|
|
cb :=cbStatic
|
|
</SPAN><SPAN class=any1-variable>DetachToStatic</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>100</SPAN><SPAN class=any1-space> )
|
|
</SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>200</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>EVAL</SPAN><SPAN class=any1-symbol>( cbStatic, </SPAN><SPAN class=any1-number>100</SPAN><SPAN class=any1-space> ) )
|
|
</SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>300</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>EVAL</SPAN><SPAN class=any1-symbol>( cbStatic, </SPAN><SPAN class=any1-number>200</SPAN><SPAN class=any1-space> ) )
|
|
</SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>4</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>EVAL</SPAN><SPAN class=any1-symbol>( cb, </SPAN><SPAN class=any1-number>3</SPAN><SPAN class=any1-space> ) )
|
|
|
|
</SPAN><SPAN class=any1-variable>ReferParam</SPAN><SPAN class=any1-symbol>()
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-symbol>( NIL )
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Static</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>TestBlocks</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>LOCAL</SPAN><SPAN class=any1-space> nFoo := </SPAN><SPAN class=any1-number>23
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-symbol>( { {|| nFoo }, {|n| nFoo := n } } )
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Static</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( nExpected, nGot )
|
|
|
|
</SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( nExpected, nGot )
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-symbol>( NIL )
|
|
|
|
</SPAN><SPAN class=any1-comment>/////////////////////////////////////////////////////////////////
|
|
</SPAN><SPAN class=any1-reservedword>PROCEDURE</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>GetArray</SPAN><SPAN class=any1-symbol>( a )
|
|
</SPAN><SPAN class=any1-reservedword>LOCAL</SPAN><SPAN class=any1-space> i
|
|
|
|
a :=</SPAN><SPAN class=any1-function>ARRAY</SPAN><SPAN class=any1-symbol>( </SPAN><SPAN class=any1-number>100</SPAN><SPAN class=any1-space> )
|
|
</SPAN><SPAN class=any1-reservedword>FOR</SPAN><SPAN class=any1-space> i:=</SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-function>TO</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-number>100
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>IF</SPAN><SPAN class=any1-symbol>( (i % </SPAN><SPAN class=any1-number>6</SPAN><SPAN class=any1-symbol>) == </SPAN><SPAN class=any1-number>0</SPAN><SPAN class=any1-space> )
|
|
a[ i-2 ] =NIL
|
|
a[ i-4 ] =NIL
|
|
</SPAN><SPAN class=any1-reservedword>ENDIF
|
|
</SPAN><SPAN class=any1-space> a[ i ] := </SPAN><SPAN class=any1-variable>TestBlocks</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>NEXT
|
|
|
|
RETURN
|
|
|
|
PROCEDURE</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>PrintArray</SPAN><SPAN class=any1-symbol>( a )
|
|
</SPAN><SPAN class=any1-reservedword>LOCAL</SPAN><SPAN class=any1-space> i
|
|
|
|
</SPAN><SPAN class=any1-reservedword>FOR</SPAN><SPAN class=any1-space> i:=</SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-function>TO</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-number>100
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>IF</SPAN><SPAN class=any1-symbol>( a[i] != NIL )
|
|
</SPAN><SPAN class=any1-function>EVAL</SPAN><SPAN class=any1-symbol>( a[ i ][ </SPAN><SPAN class=any1-number>2</SPAN><SPAN class=any1-space> ], i )
|
|
</SPAN><SPAN class=any1-variable>mqout</SPAN><SPAN class=any1-symbol>( i, </SPAN><SPAN class=any1-function>EVAL</SPAN><SPAN class=any1-symbol>( a[ i ][ </SPAN><SPAN class=any1-number>1</SPAN><SPAN class=any1-space> ] ) )
|
|
</SPAN><SPAN class=any1-reservedword>ENDIF
|
|
</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>NEXT
|
|
|
|
RETURN
|
|
|
|
</SPAN><SPAN class=any1-comment>//////////////////////////////////////////////////////////////////
|
|
</SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>DetachWithRefer</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> nTest
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> bBlock1 := </SPAN><SPAN class=any1-variable>MakeBlock</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> bBlock2 := {|| </SPAN><SPAN class=any1-variable>DoThing</SPAN><SPAN class=any1-symbol>( @nTest ), </SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( nTest ) }
|
|
|
|
</SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( bBlock1 )
|
|
</SPAN><SPAN class=any1-function>eval</SPAN><SPAN class=any1-symbol>( bBlock2 )
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-symbol>( NIL )
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>MakeBlock</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> nTest
|
|
</SPAN><SPAN class=any1-reservedword>RETURN</SPAN><SPAN class=any1-symbol>( {|| </SPAN><SPAN class=any1-variable>DoThing</SPAN><SPAN class=any1-symbol>( @nTest ), </SPAN><SPAN class=any1-function>qout</SPAN><SPAN class=any1-symbol>( nTest ) } )
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>DoThing</SPAN><SPAN class=any1-symbol>( n )
|
|
|
|
n := </SPAN><SPAN class=any1-number>42
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-symbol>( NIL )
|
|
|
|
</SPAN><SPAN class=any1-comment>//////////////////////////////////////////////////////////////////////
|
|
</SPAN><SPAN class=any1-reservedword>FUNCTION</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>DetachToStatic</SPAN><SPAN class=any1-symbol>( n )
|
|
|
|
cbStatic ={|x| n+x}
|
|
|
|
</SPAN><SPAN class=any1-reservedword>RETURN</SPAN><SPAN class=any1-space> NIL
|
|
|
|
</SPAN><SPAN class=any1-comment>// ------------------------------------------------------------
|
|
</SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>ReferParam</SPAN><SPAN class=any1-symbol>()
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> bResult
|
|
|
|
? </SPAN><SPAN class=any1-string>"Test for codeblock parameter passed by reference"
|
|
|
|
</SPAN><SPAN class=any1-variable>PassByValue</SPAN><SPAN class=any1-symbol>( {|lEnd| ;
|
|
bResult := </SPAN><SPAN class=any1-variable>GetBlock</SPAN><SPAN class=any1-symbol>( @lEnd ), ;
|
|
</SPAN><SPAN class=any1-variable>SetByRef</SPAN><SPAN class=any1-symbol>( @lEnd ) } )
|
|
</SPAN><SPAN class=any1-comment>// Clipper & xHarbour it's .T.
|
|
//In Harbour it is .F.
|
|
</SPAN><SPAN class=any1-symbol>? </SPAN><SPAN class=any1-string>"Printed value in Clipper .T. ="</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>Eval</SPAN><SPAN class=any1-symbol>( bResult )
|
|
?
|
|
</SPAN><SPAN class=any1-comment>// Notice the Clipper bug: GetBlock is receiving the reference to
|
|
// the codeblock parameter than the value of Eval(bResult) shouldn't
|
|
// depend on the order of block creation/value changing (GetBlock/SetRef).
|
|
|
|
</SPAN><SPAN class=any1-variable>PassByRef</SPAN><SPAN class=any1-symbol>( {|lEnd| ;
|
|
bResult := </SPAN><SPAN class=any1-variable>GetBlock</SPAN><SPAN class=any1-symbol>( @lEnd ), ;
|
|
</SPAN><SPAN class=any1-variable>SetByRef</SPAN><SPAN class=any1-symbol>( @lEnd ) } )
|
|
</SPAN><SPAN class=any1-comment>// Clipper & xHarbour it's .T.
|
|
//In Harbour it is .F.
|
|
</SPAN><SPAN class=any1-symbol>? </SPAN><SPAN class=any1-string>"Printed value in Clipper .T. ="</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>Eval</SPAN><SPAN class=any1-symbol>( bResult )
|
|
?
|
|
|
|
? </SPAN><SPAN class=any1-string>"2nd test for codeblock parameter passed by reference"
|
|
|
|
</SPAN><SPAN class=any1-variable>PassByValue</SPAN><SPAN class=any1-symbol>( {|lEnd| ;
|
|
</SPAN><SPAN class=any1-variable>SetByRef</SPAN><SPAN class=any1-symbol>( @lEnd ), ;
|
|
bResult := </SPAN><SPAN class=any1-variable>GetBlock</SPAN><SPAN class=any1-symbol>( @lEnd ) } )
|
|
</SPAN><SPAN class=any1-comment>// Clipper & xHarbour it's .T.
|
|
//In Harbour it is .F.
|
|
</SPAN><SPAN class=any1-symbol>? </SPAN><SPAN class=any1-string>"Printed value in Clipper .F. ="</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>Eval</SPAN><SPAN class=any1-symbol>( bResult )
|
|
?
|
|
|
|
</SPAN><SPAN class=any1-variable>PassByRef</SPAN><SPAN class=any1-symbol>( {|lEnd| ;
|
|
</SPAN><SPAN class=any1-variable>SetByRef</SPAN><SPAN class=any1-symbol>( @lEnd ), ;
|
|
bResult := </SPAN><SPAN class=any1-variable>GetBlock</SPAN><SPAN class=any1-symbol>( @lEnd ) } )
|
|
</SPAN><SPAN class=any1-comment>// Clipper & xHarbour it's .T.
|
|
//In Harbour it is .F.
|
|
</SPAN><SPAN class=any1-symbol>? </SPAN><SPAN class=any1-string>"Printed value in Clipper .F. ="</SPAN><SPAN class=any1-symbol>, </SPAN><SPAN class=any1-function>Eval</SPAN><SPAN class=any1-symbol>( bResult )
|
|
?
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-space> Nil
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Static</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>PassByValue</SPAN><SPAN class=any1-symbol>( bBlock )
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> lSomeVar := </SPAN><SPAN class=any1-activedot>.T.
|
|
</SPAN><SPAN class=any1-function>Eval</SPAN><SPAN class=any1-symbol>( bBlock, lSomeVar )
|
|
? </SPAN><SPAN class=any1-string>"lSomeVar value in Clipper .T. ="</SPAN><SPAN class=any1-symbol>, lSomeVar
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-activedot>.T.
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Static</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>PassByRef</SPAN><SPAN class=any1-symbol>( bBlock )
|
|
</SPAN><SPAN class=any1-reservedword>Local</SPAN><SPAN class=any1-space> lSomeVar := </SPAN><SPAN class=any1-activedot>.T.
|
|
</SPAN><SPAN class=any1-function>Eval</SPAN><SPAN class=any1-symbol>( bBlock, @lSomeVar )
|
|
? </SPAN><SPAN class=any1-string>"lSomeVar value in Clipper .F. ="</SPAN><SPAN class=any1-symbol>, lSomeVar
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-activedot>.T.
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Static</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>SetByRef</SPAN><SPAN class=any1-symbol>( lVar )
|
|
lVar := </SPAN><SPAN class=any1-activedot>.F.
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-space> Nil
|
|
|
|
</SPAN><SPAN class=any1-reservedword>Static</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-reservedword>Function</SPAN><SPAN class=any1-space> </SPAN><SPAN class=any1-variable>GetBlock</SPAN><SPAN class=any1-symbol>( lVar )
|
|
</SPAN><SPAN class=any1-reservedword>Return</SPAN><SPAN class=any1-space> {|| lVar }
|
|
</SPAN><SPAN class=any1-comment>// ------------------------------------------------------------
|
|
</SPAN></SPAN>
|
|
</CODE></PRE></BODY></HTML>
|