User Rating: 0 / 5

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive
 

hb_SetMacro()

Enable/disable the macro compiler runtime features.
Syntax
hb_SetMacro( <nOption>, [<lOnOff>] ) --> <lOldSetting>
Argument(s)
<nOption> One of the HB_SM_* constants defined in set.ch.
<lOnOff> .T. to enable or .F. to disable a feature
Returns
hb_SetMacro() return the old state of requested feature.
Description
This function enables or disables some features of the macro compiler. The Harbour is extending the macro features compared to an original set available in CA-Cl*pper. Enabling/disabling some of them allows to keep strict CA-Cl*pper compatibility.
Available features are: <b>HB_SM_HARBOUR</b> - enables harbour extensions:
operators: ++, --, +=, -=, *=, /=, ^= objects: assigments to an instance variable
<b>HB_SM_XBASE</b> - enables other Xbase++ dialects extensions:
expanding of expresions lists
<b>HB_SM_SHORTCUTS</b> - enables optimized evaluation of
logical operators (.and., .or.)
<b>HB_SM_PREPROC</b> - enables preprocessing of commands
This is meaningfull if Harbour is compiled with HB_MACRO_STATEMENTS flag
Example(s)
INIT PROCEDURE IWANTCLIPPER()
   hb_SetMacro( HB_SM_HARBOUR, .F. )
   hb_SetMacro( HB_SM_XBASE, .F. )
   RETURN
Status
Ready
Compliance
This is Harbour specific
Platform(s)
This is available on all platforms
File(s)
Header file is set.ch Library is core
See also

Macro compiler