From ba315e954413040acbca01f9dc2fa90722cd69ac Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Tue, 17 Jul 2012 08:04:35 +0000 Subject: [PATCH] 2012-07-17 10:03 UTC+0200 Viktor Szakats (harbour syenar.net) * contrib/hbformat/hbfmtcls.prg ! iif() added to list of functions * minor formatting * tests/readhrb.prg * minor to prev --- harbour/ChangeLog | 8 ++++ harbour/contrib/hbformat/hbfmtcls.prg | 56 +++++++++++++-------------- harbour/tests/readhrb.prg | 4 +- 3 files changed, 38 insertions(+), 30 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 68e628d1c6..261bce2664 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,14 @@ The license applies to all entries newer than 2009-04-28. */ +2012-07-17 10:03 UTC+0200 Viktor Szakats (harbour syenar.net) + * contrib/hbformat/hbfmtcls.prg + ! iif() added to list of functions + * minor formatting + + * tests/readhrb.prg + * minor to prev + 2012-07-17 09:51 UTC+0200 Viktor Szakats (harbour syenar.net) * tests/readhrb.prg + updated by Vailton Renato to work on current .hrb format diff --git a/harbour/contrib/hbformat/hbfmtcls.prg b/harbour/contrib/hbformat/hbfmtcls.prg index e4afd34546..75df741935 100644 --- a/harbour/contrib/hbformat/hbfmtcls.prg +++ b/harbour/contrib/hbformat/hbfmtcls.prg @@ -95,7 +95,7 @@ CREATE CLASS HBFORMATCODE VAR nCaseUnk INIT -1 // Case of functions ( -1 - no change, 1 - upper, 2 - lower, 3 - title ) VAR nCaseDrt INIT 2 // Case of directives ( -1 - no change, 1 - upper, 2 - lower, 3 - title ) VAR nSpaceDrt INIT 0 // Number of spaces after # in directives ( -1 - no change ) - VAR nLineFnc INIT 1 // -1 - no change, 1 - insert empty line before a function ( procedure,class ) declaration, 2 - remove it + VAR nLineFnc INIT 1 // -1 - no change, 1 - insert empty line before a function ( procedure, class ) declaration, 2 - remove it VAR nLineRet INIT 1 // -1 - no change, 1 - insert empty line before return, 2 - remove it VAR nLineVar INIT 1 // -1 - no change, 1 - insert empty line before variables declaration, 2 - remove it VAR nLineCode INIT 1 // -1 - no change, 1 - insert empty line before code in function, 2 - remove it @@ -103,7 +103,7 @@ CREATE CLASS HBFORMATCODE VAR nBr4Brac INIT 2 // Max level of nesting in brackets, while space is added after/before a bracket VAR cExtSave INIT "" // Extension for a formatted file ( "" - replace original ) - VAR cExtBack INIT "bak" // Extension for a backup file + VAR cExtBack INIT ".bak" // Extension for a backup file VAR cCommands INIT "," VAR cClauses INIT "," @@ -138,17 +138,17 @@ METHOD New( aParams, cIniName ) CLASS HBFORMATCODE ::nErr := 0 - IF hb_isString( cIniName ) - IF !::ReadIni( cIniName ) + IF HB_ISSTRING( cIniName ) + IF ! ::ReadIni( cIniName ) RETURN Self ENDIF FOR i := 1 TO Len( aParams ) - IF Left( cParam := aParams[i], 1 ) == "@" - IF !::ReadIni( SubStr( cParam, 2 ) ) + IF Left( cParam := aParams[ i ], 1 ) == "@" + IF ! ::ReadIni( SubStr( cParam, 2 ) ) RETURN Self ENDIF ELSEIF Left( cParam, 1 ) $ "-/" - IF !::SetOption( SubStr( cParam, 2 ), 0 ) + IF ! ::SetOption( SubStr( cParam, 2 ), 0 ) RETURN Self ENDIF ENDIF @@ -176,8 +176,8 @@ METHOD New( aParams, cIniName ) CLASS HBFORMATCODE IF Right( ::cFunctions, 1 ) != "," ::cFunctions += "," ENDIF - IF ! ( ",STR," $ Upper( ::cFunctions ) ) - ::cFunctions += "ISNIL,ISARRAY,ISBLOCK,ISCHARACTER,ISDATE,ISLOGICAL,ISMEMO,ISNUMBER,ISOBJECT" + IF !( ",STR," $ Upper( ::cFunctions ) ) + ::cFunctions += "iif,ISNIL,ISARRAY,ISBLOCK,ISCHARACTER,ISDATE,ISLOGICAL,ISMEMO,ISNUMBER,ISOBJECT" FOR EACH cLine IN hb_ATokens( StrTran( __harbour_hbx(), Chr( 13 ) ), Chr( 10 ) ) IF Left( cLine, Len( "DYNAMIC " ) ) == "DYNAMIC " ::cFunctions += "," + SubStr( cLine, Len( "DYNAMIC " ) + 1 ) @@ -234,7 +234,7 @@ METHOD Reformat( aFile ) CLASS HBFORMATCODE IF lComment IF ( nPos := FindNotQuoted( "*/", aFile[ i ] ) ) != 0 lComment := .F. - IF !Empty( cToken1 := SubStr( aFile[ i ], nPos + 2 ) ) + IF ! Empty( cToken1 := SubStr( aFile[ i ], nPos + 2 ) ) aFile[ i ] := Left( aFile[ i ], nPos + 1 ) nLen := rf_AINS( aFile, i + 1, cToken1 ) iDelta++ @@ -273,7 +273,7 @@ METHOD Reformat( aFile ) CLASS HBFORMATCODE IF ( nPos := FindNotQuoted( "/*", cLineAll ) ) != 0 .AND. ( nPosComment == 0 .OR. nPosComment > nPos ) nPosComment := nPos IF ( nPos := FindNotQuoted( "*/", cLineAll, nPos + 2 ) ) != 0 - IF !Empty( cToken1 := SubStr( cLineAll, nPos + 2 ) ) + IF ! Empty( cToken1 := SubStr( cLineAll, nPos + 2 ) ) cLineAll := Left( cLineAll, nPos + 1 ) nLen := rf_AINS( aFile, i + 1, cToken1 ) iDelta++ @@ -282,9 +282,9 @@ METHOD Reformat( aFile ) CLASS HBFORMATCODE lComment := .T. ENDIF ENDIF - IF !lPragmaDump .AND. ::lIndent .AND. ( !lComment .OR. nPosComment > 1 ) + IF ! lPragmaDump .AND. ::lIndent .AND. ( ! lComment .OR. nPosComment > 1 ) aFile[ i ] := cLineAll - IF !lContinue + IF ! lContinue nPosSep := 1 nLineSegment := 1 DO WHILE .T. @@ -315,8 +315,8 @@ METHOD Reformat( aFile ) CLASS HBFORMATCODE ELSEIF nLenToken >= 4 .AND. ( ( LEFTEQUAL( "static", cToken1 ) .AND. ; ( LEFTEQUAL( "function", cToken2 ) .OR. LEFTEQUAL( "procedure", cToken2 ) ) ) .OR. ; LEFTEQUAL( "function", cToken1 ) .OR. LEFTEQUAL( "procedure", cToken1 ) ; - .OR. ( "method" == cToken1 .AND. !lClass ) .OR. ; - ( "class" == cToken1 .AND. !lClass ) ) + .OR. ( "method" == cToken1 .AND. ! lClass ) .OR. ; + ( "class" == cToken1 .AND. ! lClass ) ) IF nDeep == 0 nState := RF_STATE_FUNC IF "class" == cToken1 @@ -382,11 +382,11 @@ METHOD Reformat( aFile ) CLASS HBFORMATCODE ELSEIF nState == RF_STATE_VAR nIndent := iif( ::lIndVar, ::nIndLeft, 0 ) ELSEIF nState == RF_STATE_RET - nIndent := iif( !lClass .AND. ::lIndRet, ::nIndLeft, 0 ) + nIndent := iif( ! lClass .AND. ::lIndRet, ::nIndLeft, 0 ) ELSE nIndent := ::nIndLeft + ::nIndNext * iif( nContrState == 0, nDeep, nDeep - 1 ) ENDIF - IF Left( cLine, 1 ) == "#" .AND. !::lIndDrt + IF Left( cLine, 1 ) == "#" .AND. ! ::lIndDrt nIndent := 0 ENDIF cLineAll := Space( nIndent ) + ::FormatLine( cLine ) @@ -400,7 +400,7 @@ METHOD Reformat( aFile ) CLASS HBFORMATCODE ( nState == RF_STATE_FUNC .AND. ::nLineFnc == 1 ) .OR. ; ( nState == RF_STATE_VAR .AND. ::nLineVar == 1 ) .OR. ; ( nState == RF_STATE_CODE .AND. ::nLineCode == 1 ) - IF !Empty( aFile[ nPos ] ) + IF ! Empty( aFile[ nPos ] ) nLen := rf_AINS( aFile, nPos + 1, "" ) iDelta++ i++ @@ -438,7 +438,7 @@ METHOD Reformat( aFile ) CLASS HBFORMATCODE ELSE lContinue := .F. ENDIF - ELSEIF !lPragmaDump + ELSEIF ! lPragmaDump aFile[ i ] := ::FormatLine( aFile[ i ] ) ENDIF ENDIF @@ -459,12 +459,12 @@ METHOD FormatLine( cLine, lContinued ) CLASS HBFORMATCODE LOCAL lFirst, nBegin, nEnd, nB := 0, nA := 0, aBrackets[ 2 ] LOCAL cOperators := "+-*/%#=~^<>$!" - IF !::lCase .AND. !::lSpaces + IF ! ::lCase .AND. ! ::lSpaces RETURN cLine ENDIF hb_default( @lContinued, .F. ) - lFirst := !lContinued + lFirst := ! lContinued nLen := Len( cLine ) @@ -472,7 +472,7 @@ METHOD FormatLine( cLine, lContinued ) CLASS HBFORMATCODE nPos++ ENDDO - IF !lContinued .AND. Left( cLine, 1 ) == "#" + IF ! lContinued .AND. Left( cLine, 1 ) == "#" IF ::lSpaces .AND. ::nSpaceDrt != -1 cLine := Left( cLine, nPos ) + Space( ::nSpaceDrt ) + LTrim( SubStr( cLine, nPos + 1 ) ) ENDIF @@ -543,7 +543,7 @@ METHOD FormatLine( cLine, lContinued ) CLASS HBFORMATCODE IF nEnd == nBegin nEnd := i ENDIF - IF ( !lFirst .OR. !::ConvertCmd( @cLine, nBegin, nEnd, .T. ) ) .AND. c == "(" + IF ( ! lFirst .OR. ! ::ConvertCmd( @cLine, nBegin, nEnd, .T. ) ) .AND. c == "(" ::ConvertFnc( @cLine, nBegin, nEnd ) ENDIF ENDIF @@ -638,7 +638,7 @@ METHOD ConvertCmd( cLine, nBegin, nEnd, lFirstOnly ) CLASS HBFORMATCODE IF ( ( nPos := At( "," + cToken, ::cCommands ) ) != 0 .AND. ( Len(cToken ) >= 4 ; .OR. SubStr( ::cCommands, nPos + Len( cToken ) + 1, 1 ) == "," ) ) ; .OR. ; - ( !lFirstOnly .AND. ; + ( ! lFirstOnly .AND. ; ( nPos := At( "," + cToken, ::cClauses ) ) != 0 .AND. ( Len( cToken ) >= 4 ; .OR. SubStr( ::cClauses, nPos + Len( cToken ) + 1, 1 ) == "," ) ) IF ::nCaseCmd > 0 @@ -767,9 +767,9 @@ METHOD ReadIni( cIniName ) CLASS HBFORMATCODE aIni := hb_ATokens( StrTran( MemoRead( cIniName ), Chr( 13 ) + Chr( 10 ), Chr( 10 ) ), Chr( 10 ) ) nLen := Len( aIni ) FOR i := 1 TO nLen - IF !Empty( aIni[ i ] := AllTrim( aIni[ i ] ) ) .AND. ; + IF ! Empty( aIni[ i ] := AllTrim( aIni[ i ] ) ) .AND. ; ( c := Left( aIni[ i ], 1 ) ) != ";" .AND. c != "#" - IF !::SetOption( aIni[ i ], @i, aIni ) + IF ! ::SetOption( aIni[ i ], @i, aIni ) EXIT ENDIF ENDIF @@ -807,7 +807,7 @@ METHOD Array2File( cFileName, aFile ) CLASS HBFORMATCODE ENDIF ENDIF - IF !Empty( ::cExtSave ) + IF ! Empty( ::cExtSave ) cFileName := cName + iif( Left( ::cExtSave, 1 ) != ".", ".", "" ) + ::cExtSave ENDIF IF ::lFCaseLow @@ -822,7 +822,7 @@ METHOD Array2File( cFileName, aFile ) CLASS HBFORMATCODE IF aFile[ i ] == NIL EXIT ENDIF - IF i < nLen .OR. !Empty( aFile[ i ] ) + IF i < nLen .OR. ! Empty( aFile[ i ] ) FWrite( handle, aFile[ i ] + ::cEol ) ENDIF NEXT diff --git a/harbour/tests/readhrb.prg b/harbour/tests/readhrb.prg index 4fc3fbf394..9b99547810 100644 --- a/harbour/tests/readhrb.prg +++ b/harbour/tests/readhrb.prg @@ -61,8 +61,8 @@ FUNCTION Main( cFrom ) LOCAL nIdx LOCAL cSymbol - SET( _SET_ALTERNATE, "readhrb.out" ) - SET( _SET_ALTERNATE, .T. ) + Set( _SET_ALTERNATE, "readhrb.out" ) + Set( _SET_ALTERNATE, .T. ) IF cFrom == NIL cFrom := "default.hrb"