diff --git a/harbour/ChangeLog b/harbour/ChangeLog index fbb6714dbd..e39c931831 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,21 @@ +20000101-22:50 GMT+3 Luiz Rafael Culik +* doc/funclist.txt + +Update some function status +* source/rdd/dbcmd.c + +Added to missing documentation of __dbzap() and OrdCondSet() +* source/rtl/FileSys.c + + doc for FOPEN() + + doc for FCLOSE() + + doc for FWRITE() + + doc for FSEEK() + + doc for FREAD() + + doc for FILE() + + doc for FREADSTR() + + doc for FRENAME() + + doc for FERROR() + + doc for RENAME + + doc for ERASE + 20000101-07:18 GMT+3 Luiz Rafael Culik * source/rdd/dbcmd.c * source/rtl/alert.prg diff --git a/harbour/doc/funclist.txt b/harbour/doc/funclist.txt index e2d94ea32c..ab2f1f8ccc 100644 --- a/harbour/doc/funclist.txt +++ b/harbour/doc/funclist.txt @@ -152,7 +152,7 @@ I2BIN ;R; IF ;R; INDEXEXT ;S; INDEXKEY ;S; -INDEXORD ;N; +INDEXORD ;S; INKEY ;S; INT ;R; ISALPHA ;R; @@ -259,19 +259,19 @@ YEAR ;R; DBRLOCK ;R; DBRLOCKLIST ;R; DBRUNLOCK ;R; -ORDBAGEXT ;N; -ORDBAGNAME ;N; -ORDCONDSET ;N; -ORDCREATE ;N; -ORDDESTROY ;N; -ORDFOR ;N; -ORDKEY ;N; -ORDLISTADD ;N; -ORDLISTCLEAR ;N; -ORDLISTREBUI ;N; -ORDNAME ;N; -ORDNUMBER ;N; -ORDSETFOCUS ;N; +ORDBAGEXT ;S; +ORDBAGNAME ;S; +ORDCONDSET ;S; +ORDCREATE ;S; +ORDDESTROY ;S; +ORDFOR ;S; +ORDKEY ;S; +ORDLISTADD ;S; +ORDLISTCLEAR ;S; +ORDLISTREBUI ;S; +ORDNAME ;S; +ORDNUMBER ;S; +ORDSETFOCUS ;S; RDDLIST ;R; RDDNAME ;R; RDDSETDEFAULT ;R; diff --git a/harbour/source/rdd/dbcmd.c b/harbour/source/rdd/dbcmd.c index 966a424664..f40d65a48a 100644 --- a/harbour/source/rdd/dbcmd.c +++ b/harbour/source/rdd/dbcmd.c @@ -32,6 +32,17 @@ * their web site at http://www.gnu.org/). * */ +/* + * The following parts are Copyright of the individual authors. + * www - http://www.harbour-project.org + * + * Copyright 1999 Luiz Rafael Culik + * DB*() documentation + * ORD*() documentation + * RDD*() documentation + * See doc/license.txt for licensing terms. + * + */ #include #include "extend.h" @@ -1582,7 +1593,10 @@ HARBOUR HB_ALIAS( void ) * $ONELINER$ * Performs a code block operation on the current DATA BASE * $SYNTAX$ - * DBEVAL( , [], [], [], [], [] ) --> NIL + * DBEVAL( , + * [], [], + * [], [], + * [] ) --> NIL * $ARGUMENTS$ * Operation that is to be performed * Code block for the For condition @@ -4613,6 +4627,104 @@ HARBOUR HB_DBUSEAREA( void ) SELF_RECCOUNT( ( AREAP ) pCurrArea->pArea, &ulLen ); ( ( AREAP ) pCurrArea->pArea )->lpExtendInfo->ulRecCount = ulLen; } +/* $DOC$ + * $FUNCNAME$ + * __DBZAP() + * $CATEGORY$ + * Data Base + * $ONELINER$ + * Remove all records from the current database file + * $SYNTAX$ + * __DbZap() -> NIL + * $ARGUMENTS$ + * + * $RETURNS$ + * __DbZap() will always return nil + * $DESCRIPTION$ + * __DbZap*( is a database command that permanently removes all records from + * files open in the current work area. This includes the current database + * file, index files, and associated memo file. Disk space previously + * occupied by the ZAPped files is released to the operating system. + * __DbZap() performs the same operation as DELETE ALL followed by PACK but is + * almost instantaneous. + * + * To ZAP in a network environment, the current database file must be USEd + * EXCLUSIVEly. + * + * $EXAMPLES$ + * ^CFE This example demonstrates a typical ZAP operation in a network + * environment: + * + * USE Sales EXCLUSIVE NEW + * IF !NETERR() + * SET INDEX TO Sales, Branch, Salesman + * __dbZAP() + * CLOSE Sales + * ELSE + * ? "Zap operation failed" + * BREAK + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * + * $SEEALSO$ + * + * $INCLUDE$ + * + * $END$ + */ +/* $DOC$ + * $COMMANDNAME$ + * ZAP + * $CATEGORY$ + * Command + * $ONELINER$ + * Remove all records from the current database file + * $SYNTAX$ + * ZAP + * $ARGUMENTS$ + * + * $RETURNS$ + * + * $DESCRIPTION$ + * ZAP is a database command that permanently removes all records from + * files open in the current work area. This includes the current database + * file, index files, and associated memo file. Disk space previously + * occupied by the ZAPped files is released to the operating system. ZAP + * performs the same operation as DELETE ALL followed by PACK but is almost + * instantaneous. + * + * To ZAP in a network environment, the current database file must be USEd + * EXCLUSIVEly. + * + * $EXAMPLES$ + * ^CFE This example demonstrates a typical ZAP operation in a network + * environment: + * + * USE Sales EXCLUSIVE NEW + * IF !NETERR() + * SET INDEX TO Sales, Branch, Salesman + * ZAP + * CLOSE Sales + * ELSE + * ? "Zap operation failed" + * BREAK + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * + * $SEEALSO$ + * + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB___DBZAP( void ) { @@ -5895,9 +6007,29 @@ HARBOUR HB_ORDBAGNAME( void ) * $ONELINER$ * Set the Condition and scope for an order * $SYNTAX$ - * + * ORDCONSET([], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + []) * $ARGUMENTS$ - * + * is a string that specifies the FOR condition for the + order. + is a code block that defines a FOR condition that + each record within the scope must meet in order to be processed. If + a record does not meet the specified condition,it is ignored and the + next record is processed.Duplicate keys values are not added to the + index file when a FOR condition is Used. * $RETURNS$ * * $DESCRIPTION$ @@ -6864,27 +6996,27 @@ HARBOUR HB_RDDLIST( void ) * $CATEGORY$ * Data Base * $ONELINER$ - * Return the name of the RDD active in the current or specified work area + * Return the name of the currently active RDD * $SYNTAX$ * RDDNAME() --> cRDDName * $ARGUMENTS$ * * $RETURNS$ - Returns a character string, cRDDName, the registered name of the active - RDD in the current or specified work area. + * Returns a character string, cRDDName, the registered name of the active + * RDD in the current or specified work area. * $DESCRIPTION$ - RDDNAME() is an RDD function that returns a character string, cRDDName, - the name of the active RDD in the current or specified work area. - - You can specify a work area other than the currently active work area by - aliasing the function. + * RDDNAME() is an RDD function that returns a character string, cRDDName, + * the name of the active RDD in the current or specified work area. + * + * You can specify a work area other than the currently active work area by + * aliasing the function. * $EXAMPLES$ - USE Customer VIA "DBFNTX" NEW - USE Sales VIA "DBFCDX" NEW - - ? RDDNAME() // Returns: DBFCDX - ? Customer->( RDDNAME() ) // Returns: DBFNTX - ? Sales->( RDDNAME() ) // Returns: DBFCDX + * USE Customer VIA "DBFNTX" NEW + * USE Sales VIA "DBFCDX" NEW + * + * ? RDDNAME() // Returns: DBFCDX + * ? Customer->( RDDNAME() ) // Returns: DBFNTX + * ? Sales->( RDDNAME() ) // Returns: DBFCDX * $TESTS$ * * $STATUS$ @@ -6947,31 +7079,31 @@ HARBOUR HB_RDDREGISTER( void ) * $ONELINER$ * Set or return the default RDD for the application * $SYNTAX$ - RDDSETDEFAULT([]) - --> cPreviousDefaultRDD + * RDDSETDEFAULT([]) + * --> cPreviousDefaultRDD * * $ARGUMENTS$ - is a character string, the name of the RDD that is - to be made the new default RDD in the application. + * is a character string, the name of the RDD that is + * to be made the new default RDD in the application. * $RETURNS$ - RDDSETDEFAULT() returns a character string, cPreviousDefaultRDD, the - name of the previous default driver. The default driver is the driver - that HARBOUR uses if you do not explicitly specify an RDD with the - VIA clause of the USE command. + * RDDSETDEFAULT() returns a character string, cPreviousDefaultRDD, the + * name of the previous default driver. The default driver is the driver + * that HARBOUR uses if you do not explicitly specify an RDD with the + * VIA clause of the USE command. * $DESCRIPTION$ - RDDSETDEFAULT() is an RDD function that sets or returns the name of the - previous default RDD driver and, optionally, sets the current driver to - the new RDD driver specified by cNewDefaultRDD. If - is not specified, the current default driver name is returned and - continues to be the current default driver. - - This function replaces the DBSETDRIVER() function. + * RDDSETDEFAULT() is an RDD function that sets or returns the name of the + * previous default RDD driver and, optionally, sets the current driver to + * the new RDD driver specified by cNewDefaultRDD. If + * is not specified, the current default driver name is returned and + * continues to be the current default driver. + * + * This function replaces the DBSETDRIVER() function. * $EXAMPLES$ - // If the default driver is not DBFNTX, make it the default - - IF ( RDDSETDEFAULT() != "DBFNTX" ) - cOldRdd := RDDSETDEFAULT( "DBFNTX" ) - ENDIF + * // If the default driver is not DBFNTX, make it the default + * + * IF ( RDDSETDEFAULT() != "DBFNTX" ) + * cOldRdd := RDDSETDEFAULT( "DBFNTX" ) + * ENDIF * $TESTS$ * * $STATUS$ diff --git a/harbour/source/rtl/achoice.prg b/harbour/source/rtl/achoice.prg index 6ef9e49a5d..72140e92d7 100644 --- a/harbour/source/rtl/achoice.prg +++ b/harbour/source/rtl/achoice.prg @@ -26,7 +26,6 @@ * * $ONELINER$ * Allows selection of an element from an array - * * $SYNTAX$ * ACHOICE(, , , , * , diff --git a/harbour/source/rtl/alert.prg b/harbour/source/rtl/alert.prg index fa5e505aed..47fa619cd3 100644 --- a/harbour/source/rtl/alert.prg +++ b/harbour/source/rtl/alert.prg @@ -134,7 +134,7 @@ STATIC s_lNoAlert := NIL * * is an Harbour extension. * $SEEALSO$ - * 'comm.ngo:@...PROMPT' 'comm.ngo:MENU TO' STDOUT() __NONOALERT() + * comm.ngo:'@...PROMPT' comm.ngo:'MENU TO' STDOUT() __NONOALERT() * $END$ */ diff --git a/harbour/source/rtl/devoutp.prg b/harbour/source/rtl/devoutp.prg index c39dded063..7e1b5e9c10 100644 --- a/harbour/source/rtl/devoutp.prg +++ b/harbour/source/rtl/devoutp.prg @@ -52,7 +52,7 @@ * $CATEGORY$ * Terminal * $ONELINER$ - * Outputs the result of any expression using a picture transformation + * Displays a value to a device using a picture template * $SYNTAX$ * DEVOUTPICT(,[,]) --> NIL * $ARGUMENTS$ diff --git a/harbour/source/rtl/environ.c b/harbour/source/rtl/environ.c index f5727cc457..c3173230a2 100644 --- a/harbour/source/rtl/environ.c +++ b/harbour/source/rtl/environ.c @@ -579,8 +579,8 @@ HARBOUR HB_GETE( void ) * $DESCRIPTION$ * This command runs an external program. Please make sure that you have * enough free memory to be able to run the external program. - * Do not use it to run Terminate and Stay Resident programs (in case of DOS) - * since it cause several problems + * Do not use it to run Terminate and Stay Resident programs + * (in case of DOS) since it cause several problems * $EXAMPLES$ * __Run( "edit " + cMyTextFile ) // Runs an external editor * __Run( "command" ) // Gives a DOS shell (DOS only) diff --git a/harbour/source/rtl/filesys.c b/harbour/source/rtl/filesys.c index cad50d9554..ea2ccb5308 100644 --- a/harbour/source/rtl/filesys.c +++ b/harbour/source/rtl/filesys.c @@ -61,6 +61,23 @@ * hb_fsIsDevice() * HB_FSETDEVMOD() * + * + * Copyright 2000 Luiz Rafael Culik + * FOPEN() DOCUMENTATION + * FCLOSE() DOCUMENTATION + * FWRITE() DOCUMENTATION + * FSEEK() DOCUMENTATION + * FREAD() DOCUMENTATION + * FILE() DOCUMENTATION + * FREADSTR() DOCUMENTATION + * FRENAME() DOCUMENTATION + * FERROR() DOCUMENTATION + * RENAME DOCUMENTATION + * ERASE DOCUMENTATION + * See doc/license.txt for licensing terms. + * + */ + * See doc/license.txt for licensing terms. * */ @@ -1311,6 +1328,100 @@ FHANDLE hb_fsExtOpen( BYTE * pFilename, BYTE * pDefExt, /* * -- HARBOUR FUNCTIONS -- */ +/* $DOC$ + * $FUNCNAME$ + * FOPEN() + * $CATEGORY$ + * LOW LEVEL + * $ONELINER$ + * Open a binary file + * $SYNTAX$ + * FOPEN(, []) --> nHandle + * $ARGUMENTS$ + * is the name of the file to open, including the path if there + * is one. + * + * is the requested DOS open mode indicating how the opened + * file is to be accessed. The open mode is composed of elements from the + * two types of modes described in the tables below. If just the Access + * Mode is used, the file is opened non-sharable. The default open mode is + * zero, which indicates non-sharable and read-only. + * + * FOPEN() Access Modes + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * Mode Fileio.ch Operation + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * 0 FO_READ Open for reading (default) + * 1 FO_WRITE Open for writing + * 2 FO_READWRITE Open for reading or writing + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * + * The Sharing Modes determine how other processes may access the file. + * + * FOPEN() Sharing Modes + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * Mode Fileio.ch Operation + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * 0 FO_COMPAT Compatibility mode (default) + * 16 FO_EXCLUSIVE Exclusive use + * 32 FO_DENYWRITE Prevent others from writing + * 48 FO_DENYREAD Prevent others from reading + * 64 FO_DENYNONE Allow others to read or write + * 64 FO_SHARED Same as FO_DENYNONE + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * + * The Access Modes in combination (+) with the Sharing modes determine the + * accessibility of the file in a network environment. + * + * $RETURNS$ + * FOPEN() returns the file handle of the opened file in the range of zero + * to 65,535. If an error occurs, FOPEN() returns -1. + * $DESCRIPTION$ + * FOPEN() is a low-level file function that opens an existing binary file + * for reading and writing, depending on the argument. Whenever + * there is an open error, use FERROR() to return the DOS error number. + * For example, if the file does not exist, FOPEN() returns -1 and FERROR() + * returns 2 to indicate that the file was not found. See FERROR() for a + * complete list of error numbers. + * + * If the specified file is opened successfully, the value returned is the + * DOS handle for the file. This value is similar to an alias in the + * database system and is required to identify the open file to other file + * functions. It is, therefore, important to assign the return value to a + * variable for later use as in the example below. + * + * Warning! This function allows low-level access to DOS files and + * devices. It should be used with extreme care and requires a thorough + * knowledge of the operating system. + * + * Notes + * + * ^CFE Accessing files in other directories: FOPEN() does not obey + * either SET DEFAULT or SET PATH. Instead, it searches the current DOS + * directory and path setting unless a path is explicitly stated as part + * of the argument. + * $EXAMPLES$ + * ^CFE This example uses FOPEN() to open a file with sharable + * read/write status and displays an error message if the open fails: + * + * #include "Fileio.ch" + * // + * nHandle := FOPEN("Temp.txt", FO_READWRITE + FO_SHARED) + * IF FERROR() != 0 + * ? "Cannot open file, DOS error ", FERROR() + * BREAK + * ENDIF + * $TESTS$ + * $STATUS$ + * R + * $COMPLIANCE$ + * FOPEN() is CA-CLIPPER compilant + * $SEEALSO$ + * FCREATE() FERROR() FCLOSE() + * $INCLUDE$ + * Fileio.ch + * $END$ + */ HARBOUR HB_FOPEN( void ) { @@ -1320,6 +1431,87 @@ HARBOUR HB_FOPEN( void ) else hb_errRT_BASE( EG_ARG, 2021, NULL, "FOPEN" ); /* NOTE: Undocumented but existing Clipper Run-time error */ } +/* $DOC$ + * $FUNCNAME$ + * FCREATE() + * $CATEGORY$ + * LOW LEVEL + * $ONELINER$ + * Create and/or truncate a binary file to zero-length + * $SYNTAX$ + * FCREATE(, []) --> nHandle + * $ARGUMENTS$ + * is the name of the file to create. If the file already + * exists, its length is truncated to zero without warning. + * + * is one of the binary file attributes shown in the table + * below. If this argument is omitted, the default value is zero. + * + * Binary File Attributes + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * Value Fileio.ch Attribute Description + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * 0 FC_NORMAL Normal Create normal read/write file (default) + * 1 FC_READONLY Read-only Create read-only file + * 2 FC_HIDDEN Hidden Create hidden file + * 4 FC_SYSTEM System Create system file + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * + * $RETURNS$ + * FCREATE() returns the DOS file handle number of the new binary file in + * the range of zero to 65,535. If an error occurs, FCREATE() returns + * -1 and FERROR() is set to indicate an error code. + * $DESCRIPTION$ + * FCREATE() is a low-level file function that either creates a new file or + * opens and truncates an existing file. If does not exist, it is + * created and opened for writing. If it does exist and can be opened for + * writing, it is truncated to zero-length. If it cannot be opened for + * writing, FCREATE() returns -1 and FERROR() returns the appropriate error + * value. + * + * When FCREATE() successfully creates a new file, the file is left open in + * compatibility sharing mode and read/write access mode. The file + * attribute specified by the argument is applied to the new + * file when it is closed, allowing writing to a newly created read-only + * file. For a list of access modes, see FOPEN(). + * + * Since a file handle is required in order to identify an open file to + * other file functions, always assign the return value from FCREATE() to a + * variable for later use. + * + * Like other file functions, FCREATE() does not use either the DEFAULT or + * PATH settings for its operation. Instead, it writes to the current DOS + * directory unless a path is explicitly stated. + * + * Warning! This function allows low-level access to DOS files and + * devices. It should be used with extreme care and requires a thorough + * knowledge of the operating system. + * $EXAMPLES$ + * ^CFE This example creates a file called Testfile and opens it for + * reading and writing: + * + * #include "Fileio.ch" + * + * // + * IF (nHandle := FCREATE("Testfile", FC_NORMAL)) == -1 + * ? "File cannot be created:", FERROR() + * BREAK + * ELSE + * FWRITE(nHandle, "Hello there") + * FCLOSE(nHandle) + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is CA-CLIPPER compilant + * $SEEALSO$ + * FOPEN() FCLOSE() FERROR() + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FCREATE( void ) { @@ -1329,6 +1521,78 @@ HARBOUR HB_FCREATE( void ) else hb_retni( FS_ERROR ); } +/* $DOC$ + * $FUNCNAME$ + * FREAD() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Read characters from a binary file into a buffer variable + * $SYNTAX$ + * FREAD(, @, ) --> nBytes + * $ARGUMENTS$ + * is the file handle obtained from FOPEN(), FCREATE(), or + * predefined by DOS. + * + * is the name of an existing and initialized character + * variable used to store data read from the specified file. The length of + * this variable must be greater than or equal to . + * must be passed by reference and, therefore, must be prefaced by the + * pass-by-reference operator (@). + * + * is the number of bytes to read into the buffer. + * $RETURNS$ + * FREAD() returns the number of bytes successfully read as an integer + * numeric value. A return value less than or zero indicates end + * of file or some other read error. + * $DESCRIPTION$ + * FREAD() is a low-level file function that reads characters from a binary + * file into an existing character variable. It reads from the file + * starting at the current DOS file pointer position, advancing the file + * pointer by the number of bytes read. All characters are read including + * control, null, and high-order (above CHR(127)) characters. + * + * FREAD() is similar in some respects to both FREADSTR() and FSEEK(). + * FREADSTR() reads a specified number of bytes from a file up to the next + * null (CHR(0)) character. FSEEK() moves the file pointer without + * reading. + * + * If there is an error during the file read, FERROR() returns the DOS + * error number. See FERROR() for the list of error numbers. + * + * Warning! This function allows low-level access to DOS files and + * devices. It should be used with extreme care and requires a thorough + * knowledge of the operating system. + * $EXAMPLES$ + * ^CFE This example uses FREAD() after successfully opening a file to + * read 128 bytes into a buffer area: + * + * #define F_BLOCK 128 + * + * // + * cBuffer := SPACE(F_BLOCK) + * nHandle := FOPEN("Temp.txt") + * // + * IF FERROR() != 0 + * ? "File open error:", FERROR() + * ELSE + * IF FREAD(nHandle, @cBuffer, F_BLOCK) <> F_BLOCK + * ? "Error reading Temp.txt" + * ENDIF + * FCLOSE(nHandle) + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is CA-Clipper compilant + * $SEEALSO$ + * BIN2I() BIN2L() BIN2W() FERROR() FWRITE() + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FREAD( void ) { @@ -1357,6 +1621,79 @@ HARBOUR HB_FREAD( void ) hb_retnl( ulRead ); } +/* $DOC$ + * $FUNCNAME$ + * FWRITE() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Write to an open binary file + * $SYNTAX$ + * FWRITE(, , []) + * --> nBytesWritten + * $ARGUMENTS$ + * is the file handle obtained from FOPEN(), FCREATE(), or + * predefined by DOS. + * + * is the character string to write to the specified file. + * + * indicates the number of bytes to write beginning at the + * current file pointer position. If omitted, the entire content of + * is written. + * $RETURNS$ + * FWRITE() returns the number of bytes written as an integer numeric + * value. If the value returned is equal to , the operation was + * successful. If the return value is less than or zero, either + * the disk is full or another error has occurred. + * $DESCRIPTION$ + * FWRITE() is a low-level file function that writes data to an open binary + * file from a character string buffer. You can either write all or a + * portion of the buffer contents. Writing begins at the current file + * position, and the function returns the actual number of bytes written. + * + * If FWRITE() results in an error condition, FERROR() can be used to + * determine the specific error. + * + * Warning! This function allows low-level access to DOS files and + * devices. It should be used with extreme care and requires a thorough + * knowledge of the operating system + * $EXAMPLES$ + * ^CFE This example copies the contents of one file to another: + * + * #include "Fileio.ch" + * #define F_BLOCK 512 + * // + * cBuffer := SPACE(F_BLOCK) + * nInfile := FOPEN("Temp.txt", FO_READ) + * nOutfile := FCREATE("Newfile.txt", FC_NORMAL) + * lDone := .F. + * // + * DO WHILE !lDone + * + * nBytesRead := FREAD(nInfile, @cBuffer, F_BLOCK) + * IF FWRITE(nOutfile, cBuffer, nBytesRead) < ; + * nBytesRead + * ? "Write fault: ", FERROR() + * lDone := .T. + * ELSE + * lDone := (nBytesRead == 0) + * ENDIF + * ENDDO + * // + * FCLOSE(nInfile) + * FCLOSE(nOutfile) + * $TESTS$ + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is not CA-Clipper compatile since + * it can writes strings greather the 64K + * $SEEALSO$ + * FCLOSE() FCREATE() FERROR() FOPEN() I2BIN() L2BIN() + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FWRITE( void ) { @@ -1367,11 +1704,106 @@ HARBOUR HB_FWRITE( void ) else hb_retnl( 0 ); } +/* $DOC$ + * $FUNCNAME$ + * FERROR() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Test for errors after a binary file operation + * $SYNTAX$ + * FERROR() --> nErrorCode + * $ARGUMENTS$ + * + * $RETURNS$ + * FERROR() returns the DOS error from the last file operation as an + * integer numeric value. If there is no error, FERROR() returns zero. + * + * FERROR() Return Values + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * Error Meaning + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * 0 Successful + * 2 File not found + * 3 Path not found + * 4 Too many files open + * 5 Access denied + * 6 Invalid handle + * 8 Insufficient memory + * 15 Invalid drive specified + * 19 Attempted to write to a write-protected disk + * 21 Drive not ready + * 23 Data CRC error + * 29 Write fault + * 30 Read fault + * 32 Sharing violation + * 33 Lock Violation + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * $DESCRIPTION$ + * FERROR() is a low-level file function that indicates a DOS error after a + * file function is used. These functions include FCLOSE(), FCREATE(), + * FERASE(), FOPEN(), FREAD(), FREADSTR(), and FRENAME(). FERROR() retains + * its value until the next execution of a file function. + * + * Warning! This function allows low-level access to DOS files and + * devices. It should be used with extreme care and requires a thorough + * knowledge of the operating system. + * $EXAMPLES$ + * ^CFE This example tests FERROR() after the creation of a binary + * file and displays an error message if the create fails: + * + * #include "Fileio.ch" + * // + * nHandle := FCREATE("Temp.txt", FC_NORMAL) + * IF FERROR() != 0 + * ? "Cannot create file, DOS error ", FERROR() + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is CA-Clipper compatible + * $SEEALSO$ + * FCLOSE() FERASE() FOPEN() FWRITE() + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FERROR( void ) { hb_retni( hb_fsError() ); } +/* $DOC$ + * $FUNCNAME$ + * FCLOSE() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * + * $SYNTAX$ + * + * $ARGUMENTS$ + * + * $RETURNS$ + * + * $DESCRIPTION$ + * + * $EXAMPLES$ + * + * $TESTS$ + * + * $STATUS$ + * + * $COMPLIANCE$ + * + * $SEEALSO$ + * + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FCLOSE( void ) { @@ -1385,6 +1817,59 @@ HARBOUR HB_FCLOSE( void ) else hb_retl( FALSE ); } +/* $DOC$ + * $FUNCNAME$ + * FERASE() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Delete a file from disk + * $SYNTAX$ + * FERASE() --> nSuccess + * $ARGUMENTS$ + * is the name of the file to be deleted from disk, including + * extension, optionally preceded by a drive and/or path specification. + * $RETURNS$ + * FERASE() returns -1 if the operation fails and zero if it succeeds. In + * the case of a failure, FERROR() can be used to determine the nature of + * the error. + * $DESCRIPTION$ + * FERASE() is a file function that deletes a specified file from disk. + * FERASE() is the same as the ERASE command but returns a value and can be + * specified within an expression. When FERASE() is called, is + * deleted from disk only if found in the current DOS directory or in the + * directory explicitly specified as part of the filename. Like the other + * file functions and commands, FERASE() does not use either SET DEFAULT or + * SET PATH to locate . + * + * Warning! Files must be CLOSEd before removing them with FERASE(). + * $EXAMPLES$ + * ^CFE This example deletes a set of files matching a wildcard + * pattern: + * + * #include "Directry.ch" + * AEVAL(DIRECTORY("*.BAK"), { |aFile| ; + * FERASE(aFile[F_NAME]) }) + * + * ^CFE This example erases a file and displays a message if the + * operation fails: + * + * IF FERASE("AFile.txt") == -1 + * ? "File erase error:", FERROR() + * BREAK + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is CA-Clipper Compatible + * $SEEALSO$ + * FERROR() FRENAME() + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FERASE( void ) { @@ -1395,6 +1880,63 @@ HARBOUR HB_FERASE( void ) else hb_retni( -1 ); } +/* $DOC$ + * $FUNCNAME$ + * FRENAME() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Change the name of a file + * $SYNTAX$ + * FRENAME(, ) --> nSuccess + * $ARGUMENTS$ + * is the name of the file to rename, including the file + * extension. A drive letter and/or path name may also be included as part + * of the filename. + * + * is the new name of the file, including the file + * extension. A drive letter and/or path name may also be included as part + * of the name. + * $RETURNS$ + * FRENAME() returns -1 if the operation fails and zero if it succeeds. In + * the case of a failure, FERROR() can be used to determine the nature of + * the error. + * $DESCRIPTION$ + * FRENAME() is a file function that changes the name of a specified file + * to a new name and is identical to the RENAME command. + * + * When FRENAME() is called, is renamed only if it is located in + * the current DOS directory or in the specified path. FRENAME() does not + * use SET DEFAULT or SET PATH to locate . + * + * If the source directory is different from the target directory, the file + * moves to the target directory. In the instance that either + * exists or is currently open, FRENAME() fails and returns -1, indicating + * that it did not perform its designated action. The nature of the error + * can be determined with FERROR(). + * + * Warning! Files must be CLOSEd before renaming. Attempting to + * rename an open file will produce unpredictable results. When a database + * file is renamed, the associated memo (.dbt) file must also be renamed. + * Failure to do so may compromise the integrity of your databases. + * $EXAMPLES$ + * ^CFE This example demonstrates a file rename: + * + * IF FRENAME("OldFile.txt", "NewFile.txt") == -1 + * ? "File error:", FERROR() + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is CA-Clipper compilant + * $SEEALSO$ + * 'ERASE' FERASE() FERROR() FILE() 'RENAME' + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FRENAME( void ) { @@ -1405,6 +1947,101 @@ HARBOUR HB_FRENAME( void ) else hb_retni( -1 ); } +/* $DOC$ + * $FUNCNAME$ + * FSEEK() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Set a binary file pointer to a new position + * $SYNTAX$ + * FSEEK(, , []) --> nPosition + * $ARGUMENTS$ + * is the file handle obtained from FOPEN(), FCREATE(), or + * predefined by DOS. + * + * is the number of bytes to move the file pointer from the + * position defined by . It can be a positive or negative number. + * A positive number moves the pointer forward, and a negative number moves + * the pointer backward in the file. + * + * defines the starting location of the file pointer before + * FSEEK() is executed. The default value is zero, representing the + * beginning of file. If is the end of file, must be + * zero or negative. + * + * Methods of Moving the File Pointer + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * Origin Fileio.ch Description + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * 0 FS_SET Seek from beginning of file + * 1 FS_RELATIVE Seek from the current pointer position + * 2 FS_END Seek from end of file + * ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ + * $RETURNS$ + * FSEEK() returns the new position of the file pointer relative to the + * beginning of file (position 0) as an integer numeric value. This value + * is without regard to the original position of the file pointer. + * $DESCRIPTION$ + * FSEEK() is a low-level file function that moves the file pointer forward + * or backward in an open binary file without actually reading the contents + * of the specified file. The beginning position and offset are specified + * as function arguments, and the new file position is returned. + * Regardless of the function arguments specified, the file pointer cannot + * be moved beyond the beginning or end of file boundaries. + * + * Warning! This function allows low-level access to DOS files and + * devices. It should be used with extreme care and requires a thorough + * knowledge of the operating system. + * $EXAMPLES$ + * ^CFE This example uses FSEEK() to determine the length of a file by + * seeking from the end of file. Then, the file pointer is reset to the + * beginning of file: + * + * #include "Fileio.ch" + * // + * // Open the file read-only + * IF (nHandle := FOPEN("Temp.txt")) >= 0 + * // + * // Get length of the file + * nLength := FSEEK(nHandle, 0, FS_END) + * // + * // Reset file position to beginning of file + * FSEEK(nHandle, 0) + * FCLOSE(nHandle) + * ELSE + * ? "File open error:", FERROR() + * ENDIF + * + * ^CFE This pseudofunction positions the file pointer at the last + * byte in a binary file: + * + * #define FileBottom(nHandle); + * (FSEEK(nHandle, 0, FS_END)) + * + * ^CFE This pseudofunction positions the file pointer at the first + * byte in a binary file: + * + * #define FileTop(nHandle); + * (FSEEK(nHandle, 0)) + * + * ^CFE This pseudofunction reports the current position of the file + * pointer in a specified binary file: + * + * #define FilePos(nHandle); + * (FSEEK(nHandle, 0, FS_RELATIVE)) + * + * $TESTS$ + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is CA-Clipper compilant + * $SEEALSO$ + * FCREATE() FERROR() FOPEN() FREAD() FREADSTR() FWRITE() + * $INCLUDE$ + * Fileio.ch + * $END$ + */ HARBOUR HB_FSEEK( void ) { @@ -1447,11 +2084,122 @@ BOOL hb_fsFile( BYTE * pFilename ) return bIsFile; } +/* $DOC$ + * $FUNCNAME$ + * FILE() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Determine if files exists + * $SYNTAX$ + * FILE() --> lExists + * $ARGUMENTS$ + * is in the current Harbour default directory and path. + * It is a standard file specification that can include the wildcard + * characters * and ? as well as a drive and path reference. Explicit + * references to a file must also include an extension. + * $RETURNS$ + * FILE() returns true (.T.) if there is a match for any file matching the + * pattern; otherwise, it returns false (.F.). + * $DESCRIPTION$ + * FILE() is an environment function that determines whether any file + * matching a file specification pattern is found. FILE() searches the + * specified directory if a path is explicitly specified. + * + * If a path is not specified, FILE() searches the current CA-Clipper + * default directory and then the CA-Clipper path. In no case is the DOS + * path searched. Note also that FILE() does not recognize hidden or + * system files in its search. + * $EXAMPLES$ + * ^CFE In this example FILE() attempts to find Sales.dbf in other + * than the current CA-Clipper default: + * + * ? FILE("Sales.dbf") // Result: .F. + * ? FILE("\APPS\DBF\Sales.dbf") // Result: .T. + * // + * SET PATH TO \APPS\DBF + * ? FILE("Sales.dbf") // Result: .T. + * // + * SET PATH TO + * SET DEFAULT TO \APPS\DBF\ + * ? FILE("Sales.dbf") // Result: .T. + * ? FILE("*.dbf") // Result: .T. + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is CA-Clipper compatible + * $SEEALSO$ + * + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FILE( void ) { hb_retl( ISCHAR( 1 ) ? hb_fsFile( ( BYTE * ) hb_parc( 1 ) ) : FALSE ); } +/* $DOC$ + * $FUNCNAME$ + * FREADSTR() + * $CATEGORY$ + * Low Level + * $ONELINER$ + * Read characters from a binary file + * $SYNTAX$ + * FREADSTR(, ) --> cString + * $ARGUMENTS$ + * is the file handle obtained from FOPEN(), FCREATE(), or + * predefined by DOS. + * + * is the number of bytes to read, beginning at the current + * DOS file pointer position. + * $RETURNS$ + * FREADSTR() returns a character string with any size including + * strings greather then 64K. A return value ("") indicates an + * error or end of file. + * $DESCRIPTION$ + * FREADSTR() is a low-level file function that reads characters from an + * open binary file beginning with the current DOS file pointer position. + * Characters are read up to or until a null character (CHR(0)) is + * encountered. All characters are read including control characters + * except for CHR(0). The file pointer is then moved forward . If + * is greater than the number of bytes from the pointer position + * to the end of the file, the file pointer is positioned to the last byte + * in the file. + * + * Warning! This function allows low-level access to DOS files and + * devices. It should be used with extreme care and requires a thorough + * knowledge of the operating system. + * $EXAMPLES$ + * ^CFE This example displays the ASCII values of the first 16 bytes + * of a text file: + * + * #include "Fileio.ch" + * // + * nHandle := FOPEN("New.txt", FC_NORMAL) + * IF FERROR() != 0 + * ? "File open error:", FERROR() + * ELSE + * cString := FREADSTR(nHandle, 16) + * ? cString + * FCLOSE(nHandle) + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This function is not CA-Clipper compilant since can read + * strings greather the 65K + * $SEEALSO$ + * BIN2I() BIN2L() BIN2W() FERROR() FREAD() FSEEK() + * $INCLUDE$ + * + * $END$ + */ HARBOUR HB_FREADSTR( void ) { @@ -1714,3 +2462,121 @@ HARBOUR HB_FSETDEVMOD( void ) } #endif +/* HARBOUR COMMAND THAT ARE PREPROCESSED IN FUNTION */ +/* $DOC$ + * $FUNCNAME$ + * RENAME + * $CATEGORY$ + * Command + * $ONELINER$ + * Change the name of a file + * $SYNTAX$ + * RENAME TO + * + * $ARGUMENTS$ + * is the name of the file to rename including an extension + * and optionally preceded by a drive and/or path designator. + * can be specified as a literal string or a character expression enclosed + * in parentheses. + * + * TO specifies the new filename including extension and + * optionally prefaced by a drive and/or path designator. can + * be specified as a literal string or a character expression enclosed in + * parentheses. + * + * $RETURNS$ + * $DESCRIPTION$ + * RENAME is a file command that changes the name of a specified file to a + * new name. If the source directory is different from the target + * directory, the file moves to the new directory. RENAME does not use SET + * DEFAULT and SET PATH to locate . Instead, the is + * renamed only if it is located in the current DOS directory or in the + * specified path. + * + * In the instance that either exists or is currently open, + * RENAME does nothing. To trap this condition as an error, use the FILE() + * function before executing the command. See the example below. + * + * Warning! Files must be CLOSEd before renaming. Attempting to + * rename an open file will produce unpredictable results. When a database + * file is RENAMEd, remember that any associated memo (.dbt) file must also + * be RENAMEd. Failure to do so may compromise the integrity of your + * program. + * + * $EXAMPLES$ + * ^CFE This example renames a file, checking for the existence of the + * target file before beginning the RENAME operation: + * + * xcOldFile := "OldFile.txt" + * xcNewFile := "NewFile.txt" + * IF !FILE(xcNewFile) + * RENAME (xcOldFile) TO (xcNewFile) + * ELSE + * ? "File already exists" + * ENDIF + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This command is CA-Clipper compatible + * $SEEALSO$ + * CURDIR() 'ERASE' FILE() FERASE() FRENAME() + * $INCLUDE$ + * + * $END$ + */ + +/* $DOC$ + * $FUNCNAME$ + * ERASE + * $CATEGORY$ + * Comamnd + * $ONELINER$ + * Remove a file from disk + * $SYNTAX$ + * + * DELETE FILE | ERASE + * + * $ARGUMENTS$ + * + * is the name of the file to be deleted from disk and can be + * specified either as a literal filename or as a character expression + * enclosed in parentheses. You must specify the filename, including the + * extension, and it may optionally be preceded by a drive and/or path + * specification. + * $RETURNS$ + * $DESCRIPTION$ + * + * DELETE FILE, a synonym for ERASE, is a file command that removes the + * specified file from disk. SET DEFAULT and SET PATH do not affect DELETE + * FILE. The file is deleted from disk only if found in the current DOS + * directory or in the directory explicitly specified as part of the + * filename. + * + * Warning! Files must be CLOSEd before deleting them. + * + * $EXAMPLES$ + * + * ^CFE This example removes a specified file from disk then tests to + * see if the file was in fact removed: + * + * ? FILE("Temp.dbf") // Result: .T. + * DELETE FILE Temp.dbf + * ? FILE("Temp.dbf") // Result: .F. + * + * + * $TESTS$ + * + * $STATUS$ + * R + * $COMPLIANCE$ + * This command is CA-Clipper compatible + * $SEEALSO$ + * CURDIR() FILE() + * $INCLUDE$ + * + * $END$ + */ + + diff --git a/harbour/source/rtl/hardcr.c b/harbour/source/rtl/hardcr.c index 294282ceba..8e7c860c8d 100644 --- a/harbour/source/rtl/hardcr.c +++ b/harbour/source/rtl/hardcr.c @@ -35,32 +35,32 @@ /* $DOC$ * $FUNCNAME$ - * HARDCR() + * HARDCR() * $CATEGORY$ - * STRINGS + * STRINGS * $ONELINER$ - * Converts soft carriage pair chr(141)/chr(10) into hard carriage chr(13) + * Globaly replace all soft cariages returns with hard cariages returs * $SYNTAX$ - * HARDCR( ) --> + * HARDCR( ) --> * $ARGUMENTS$ - * is a string of chars to convert. + * is a string of chars to convert. * $RETURNS$ - * Trasformed string. + * Trasformed string. * $DESCRIPTION$ - * Returns a string/memo with soft carriages chars converted to - * hard carraige char. + * Returns a string/memo with soft carriages chars converted to + * hard carraige char. * $EXAMPLES$ - * ? HARDCR( Data->CNOTES ) + * ? HARDCR( Data->CNOTES ) * $TESTS$ - * @ 1, 1 SAY HARDCR( Data->CNOTES ) - * will display converted string starting on row two, column two of the - * current device. + * @ 1, 1 SAY HARDCR( Data->CNOTES ) + * will display converted string starting on row two, column two of the + * current device. * $STATUS$ - * R + * R * $COMPLIANCE$ - * HARDCR() is fully CA-Clipper compliant. + * HARDCR() is fully CA-Clipper compliant. * $SEEALSO$ - * MEMOTRAN() STRTRAN() + * MEMOTRAN() STRTRAN() * $END$ */ diff --git a/harbour/source/rtl/memvars.c b/harbour/source/rtl/memvars.c index eaaed5ea8e..3df18bf9d4 100644 --- a/harbour/source/rtl/memvars.c +++ b/harbour/source/rtl/memvars.c @@ -1162,7 +1162,7 @@ HARBOUR HB___MVXRELEASE( void ) * $CATEGORY$ * Variable Management * $ONELINER$ - * This function releases PRIVATE variables created in current procedure + * This function releases PRIVATE variables * $SYNTAX$ * __MVRELEASE( , ) * $ARGUMENTS$ @@ -1233,12 +1233,15 @@ HARBOUR HB___MVRELEASE( void ) * = a string with a variable name to check * $RETURNS$ * The symbolic values are defined in include/hbmemvar.ch - * HB_MV_NOT_FOUND =variable is not declared (not found in symbol table) - * HB_MV_UNKNOWN =if variable doesn't exist (but found in symbol table) - * HB_MV_ERROR =if information cannot be obtained (memory error or argument error) + * HB_MV_NOT_FOUND =variable is not declared (not found in symbol table) + * HB_MV_UNKNOWN =if variable doesn't exist (but found in symbol table) + * HB_MV_ERROR =if information cannot be obtained (memory error + * or argument error) * HB_MV_PUBLIC =for public variables - * HB_MV_PRIVATE_GLOBAL =for private variables declared outside of current function/procedure - * HB_MV_PRIVATE_LOCAL =for private variables declared in current function/procedure + * HB_MV_PRIVATE_GLOBAL =for private variables declared outside of current + * function/procedure + * HB_MV_PRIVATE_LOCAL =for private variables declared in current + * function/procedure * $DESCRIPTION$ * * $EXAMPLES$ @@ -1356,9 +1359,9 @@ HARBOUR HB___MVCLEAR( void ) * It also returns the name of a variable if optional third argument * is passed by reference. * - * If requested variable doesn't exist (requested position is greater - * then the number of defined variables) then NIL value is returned - * and variable name is set to "?" + * If requested variable doesn't exist (requested position is + * greater then the number of defined variables) then NIL value is + * returned and variable name is set to "?" * * The dynamic symbols table is used to find a PUBLIC variable then * the PUBLIC variables are always sorted alphabetically. The PRIVATE @@ -1514,7 +1517,8 @@ HARBOUR HB___MVDBGINFO( void ) * The variable is specified by its name passed as the function parameter. * $EXAMPLES$ * FUNCTION MEMVARBLOCK( cMemvar ) - * RETURN {|x| IIF( PCOUNT()==0, __MVGET( cMemvar ), __MVPUT( cMemvar, x ) ) } + * RETURN {|x| IIF( PCOUNT()==0, __MVGET( cMemvar ),; + * __MVPUT( cMemvar, x ) ) } * $STATUS$ * * $COMPLIANCE$ @@ -1611,7 +1615,8 @@ HARBOUR HB___MVGET( void ) * If a value is not specified then the NIL is assumed * $EXAMPLES$ * FUNCTION MEMVARBLOCK( cMemvar ) - * RETURN {|x| IIF( PCOUNT()==0, __MVGET( cMemvar ), __MVPUT( cMemvar, x ) ) } + * RETURN {|x| IIF( PCOUNT()==0, __MVGET( cMemvar ),; + * __MVPUT( cMemvar, x ) ) } * $STATUS$ * * $COMPLIANCE$ diff --git a/harbour/source/rtl/objfunc.prg b/harbour/source/rtl/objfunc.prg index 57047b1999..8e711427f7 100644 --- a/harbour/source/rtl/objfunc.prg +++ b/harbour/source/rtl/objfunc.prg @@ -684,8 +684,7 @@ return oObject * $CATEGORY$ * Object manipulation * $ONELINER$ - * Modify (replace) an INLINE method in an already - * existing class + * Modify (replace) an INLINE method in an already existing class * $SYNTAX$ * __objModInline( , , ) --> oObject * $ARGUMENTS$ diff --git a/harbour/source/rtl/setkey.prg b/harbour/source/rtl/setkey.prg index 4592c6f23d..de38bde9d2 100644 --- a/harbour/source/rtl/setkey.prg +++ b/harbour/source/rtl/setkey.prg @@ -189,38 +189,37 @@ return NIL //bReturn /* $DOC$ * $FUNCNAME$ - * HB_SETKEYSAVE() + * HB_SETKEYSAVE() * $CATEGORY$ - * Events + * Events * $ONELINER$ - * Returns a copy of internal set-key list, - * optionally overwriting + * Returns a copy of internal set-key list, optionally overwriting * $SYNTAX$ - * HB_SETKEYSAVE( [ ] ) + * HB_SETKEYSAVE( [ ] ) * $ARGUMENTS$ - * is an optional set-key list from a previous call to - * HB_SetKeySave(), or NIL to clear current set-key list + * is an optional set-key list from a previous call to + * HB_SetKeySave(), or NIL to clear current set-key list * $RETURNS$ - * Current set-key list + * Current set-key list * $DESCRIPTION$ - * HB_SetKeySave() is designed to act like the set() function which - * returns the current state of an environment setting, and optionally - * assigning a new value. In this case, the "environment setting" is the - * internal set-key list, and the optional new value is either a value - * returned from a previous call to SetKeySave() - to restore that list, - * or the value of NIL to clear the current list. + * HB_SetKeySave() is designed to act like the set() function which + * returns the current state of an environment setting, and optionally + * assigning a new value. In this case, the "environment setting" is the + * internal set-key list, and the optional new value is either a value + * returned from a previous call to SetKeySave() - to restore that list, + * or the value of NIL to clear the current list. * $EXAMPLES$ - * local aKeys := HB_SetKeySave( NIL ) // removes all current set=keys - * ... // some other processing - * HB_SetKeySave( aKeys ) + * local aKeys := HB_SetKeySave( NIL ) // removes all current set=keys + * ... // some other processing + * HB_SetKeySave( aKeys ) * $TESTS$ - * None definable + * None definable * $STATUS$ - * R + * R * $COMPLIANCE$ - * HB_SETKEYSAVE() is new. + * HB_SETKEYSAVE() is new. * $SEEALSO$ - * SETKEY() + * SETKEY() * $END$ */ Function HB_SetKeySave( OldKeys ) diff --git a/harbour/source/rtl/text.prg b/harbour/source/rtl/text.prg index 82718d6732..fb8e47c882 100644 --- a/harbour/source/rtl/text.prg +++ b/harbour/source/rtl/text.prg @@ -54,12 +54,12 @@ STATIC s_cOldExtraFile /* $DOC$ * $FUNCNAME$ - * __TextSave() + * __TextSave() * $CATEGORY$ - * Internal + * Internal * $ONELINER$ - * Redirect console output to printer or a file and - * save old settings + * Redirect console output to printer or file and save old settings + * * $SYNTAX$ * __TextSave( ) --> NIL * $ARGUMENTS$ @@ -80,7 +80,7 @@ STATIC s_cOldExtraFile * $PLATFORMS$ * $FILES$ * $SEEALSO$ - * envirom.ngi:SET() 'SET ALTERNATE' 'SET PRINTER' 'TEXT' __TextRestore() + * envirom.ngo:SET() 'SET ALTERNATE' 'SET PRINTER' 'TEXT' __TextRestore() * $END$ */ @@ -122,7 +122,7 @@ PROCEDURE __TextSave( cFile ) * $PLATFORMS$ * $FILES$ * $SEEALSO$ - * envirom.ngi:SET() 'SET ALTERNATE' 'SET PRINTER' 'TEXT' __TextSave() + * envirom.ngo:SET() 'SET ALTERNATE' 'SET PRINTER' 'TEXT' __TextSave() * $END$ */ diff --git a/harbour/source/rtl/xsavescr.prg b/harbour/source/rtl/xsavescr.prg index 41eaf56427..7a20901c79 100644 --- a/harbour/source/rtl/xsavescr.prg +++ b/harbour/source/rtl/xsavescr.prg @@ -189,7 +189,7 @@ PROCEDURE __XSAVESCREEN() */ /* $DOC$ * $FUNCNAME$ - * REST SCREEN + * RESTORE SCREEN * $CATEGORY$ * Command * $ONELINER$