PValue() now also a seperate function
This commit is contained in:
@@ -1,3 +1,11 @@
|
||||
19990524-14:30 CET Eddie Runia
|
||||
* source/vm/hvm.c
|
||||
<xArg> := PValue(<nArg>) added
|
||||
* tests/working/run_exp.h
|
||||
added to function list
|
||||
* tests/working/multiarg.prg
|
||||
test program used
|
||||
|
||||
19990524-10:25 CET Alexander Kressin (upload Eddie Runia)
|
||||
* source/hbpp
|
||||
added preprocessor
|
||||
|
||||
@@ -127,6 +127,7 @@ static void ForceLink( void );
|
||||
|
||||
ULONG hb_isMessage( PITEM, char * );
|
||||
ULONG hb_strAt( char *, long, char *, long );
|
||||
PITEM hb_itemReturn( PITEM );
|
||||
|
||||
#define STACK_INITITEMS 100
|
||||
#define STACK_EXPANDITEMS 20
|
||||
@@ -2206,4 +2207,23 @@ HARBOUR PCOUNT()
|
||||
_retni( wRet );
|
||||
}
|
||||
|
||||
HARBOUR PVALUE() /* PValue( <nArg> ) */
|
||||
{
|
||||
WORD wParam = _parni( 1 ); /* Get parameter */
|
||||
PITEM pBase = stack.pItems + stack.pBase->wBase;
|
||||
/* Skip function + self */
|
||||
|
||||
if( wParam && wParam <= pBase->wParams ) /* Valid number */
|
||||
hb_itemReturn( pBase + 1 + wParam );
|
||||
else
|
||||
{
|
||||
PITEM pError = _errNew();
|
||||
|
||||
_errPutDescription(pError, "Argument error: PVALUE");
|
||||
_errLaunch(pError);
|
||||
_errRelease(pError);
|
||||
_ret();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
21
harbour/tests/working/multiarg.prg
Normal file
21
harbour/tests/working/multiarg.prg
Normal file
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// MultiArg
|
||||
//
|
||||
// Testing of multiple arguments
|
||||
//
|
||||
// Date : 1999/05/24
|
||||
//
|
||||
function Main()
|
||||
|
||||
ShoutArg( 1, "1", 2.5, .T. )
|
||||
ShoutArg( 2, "1", 2.5, .T. )
|
||||
ShoutArg( 3, "1", 2.5, .T. )
|
||||
ShoutArg( 4, "1", 2.5, .T. )
|
||||
ShoutArg( 5, "1", 2.5, .T. )
|
||||
return nil
|
||||
|
||||
|
||||
function ShoutArg( nArg, x1,x2,x3,x4,x5,x6,x7,x8,x9,x10 )
|
||||
|
||||
QOut( nArg, "==", PValue( nArg ) )
|
||||
return nil
|
||||
@@ -116,6 +116,7 @@ HARBOUR TANH();
|
||||
HARBOUR STRDUMP();
|
||||
HARBOUR STRTOKEN();
|
||||
HARBOUR ROT13();
|
||||
HARBOUR PVALUE();
|
||||
|
||||
/* Same story.
|
||||
|
||||
@@ -233,5 +234,6 @@ static SYMBOL symbols[] = {
|
||||
{ "TANH", FS_PUBLIC, TANH , 0 },
|
||||
{ "STRDUMP", FS_PUBLIC, STRDUMP , 0 },
|
||||
{ "STRTOKEN", FS_PUBLIC, STRTOKEN , 0 },
|
||||
{ "ROT13", FS_PUBLIC, ROT13 , 0 }
|
||||
{ "ROT13", FS_PUBLIC, ROT13 , 0 },
|
||||
{ "PVALUE", FS_PUBLIC, PVALUE , 0 }
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user