MacroFunction

Got an idea for enhancing PureBasic? New command(s) you'd like to see?
User avatar
helpy
Enthusiast
Enthusiast
Posts: 552
Joined: Sat Jun 28, 2003 12:01 am

MacroFunction

Post by helpy »

I found no way to realize something like a macro function, because macros cannot return values (or did I miss something??).

Here an example for what I mean:

Code: Select all

MacroFunction IIF(iifExpression,iifTrue,iifFalse)
  If iifExpression
    MacroReturn = iifTrue
  Else
    MacroReturn = iifFalse
  EndIf
EndMacroFunction

x1.l = 4
x2.l = 8
x.l = 5
test.l = IIF(x.l < 6, x1, x2)
I am not sure, if such a functionality would make sense?


For now I could use:

Code: Select all

Macro IIF(iifResult,iifExpression,iifTrue,iifFalse)
  If iifExpression
    iifResult = iifTrue
  Else
    iifResult = iifFalse
  EndIf
EndMacroFunction

x1.l = 4
x2.l = 8
x.l = 5
IIF(test.l, x.l < 6, x1, x2)
cu, helpy