Symbol | Example | Description |
byte` | x`= expr | Signed byte variable |
byte`` | x``= expr | Unsigned byte variable |
word% | x% = expr | Signed integer |
word%` | x%` = expr | Unsigned integer |
long& | x& = expr | Signed long integer |
long&` | x&` = expr | Unsigned long integer |
single! | x! = expr | Single precision |
double# | x# = expr | Double precision |
" | "text" | Literal string |
$ | x$ = expr | Pascal String |
$$ | x$$ = expr | 2 Gig container |
; | Dim x;4 | Obsolete/Unsupported(don't use) Force a specific size for a dimensioned variable |
|| | expr || expr | Or |
&& | expr && expr | And |
^& | expr ^& expr | Nand (Not And) |
^| | expr ^| expr | Nor (Not Or) |
^^ | expr ^^ expr | Xor |
!= | expr != expr | Not equal < >> |
_ | _constant = 4 | Identifies a constant |
_ | _"PICT" | The text in quotes is taken as a 4 byte restype or OStype |
|| | |expr| | Peek (or Peek Byte) |
{} | {expr} | Peek Word |
[] | [expr] | Peek Long |
| | | expr | Poke (or Poke Byte) |
% | % expr | Poke Word |
~ | ~ expr | Poke Long |
& | &hexExpr | Deprecated for use as a hexadecimal number. Use the '0x' syntax instead |
&H | &HhexExpr | Deprecated for use as a hexadecimal number. Use the '0x' syntax instead |
0x | 0xhexExpr | Hexadecimal number |
&O | &Oexpr | Octal literal - Deprecated with removal planned at a future time |
&X | &Xexpr | Deprecated for use as a binary literal. Use the new '0b' syntax instead |
' | ' remark | Deprecated for use as a remark. Use double slash ( // ) instead |
// | // remark | Indicates the beginning of a remark |
/* */ | /* remark */ | Marks the beginning and end of a multi-line block remark |
# | #parameter | In some situations, FB 'helps' you by taking the address of a pointer variable ( such as ptr 'p' ) ( i.e. &p is generated in C ) when what you actually need is just the pointer( because it already contains a valid address ). Using the pound (#) symbol ( e.g. #p ) tells the translator to leave it alone and just put 'p' in the translated C, which is what you want. |
@[ | @[@"alpha"] | Specifies the construction of a Core Foundation array ( CFArrayRef ). FB's version of Objective-C's literal syntax. After specifying the array's objects, it must be terminated with a closing bracket ]. The "Shorthand Getter" FB examples within Collections/Arrays demonstrate both this construction syntax but also the subscript( "getter") syntax. |
@{ | @{@"Name":@"Bruce} | Specifies the construction of a Core Foundation dictionary ( CFDicionaryRef ). FB's version of Objective-C's literal syntax. After specifying the dictionary's objects, it must be terminated with a closing brace }. The "Shorthand Getter" FB examples within Collections/Dictoinary demonstrate both this construction syntax but also the subscript( "getter") syntax. |
@ | @varName | Specifies that the operation should use the address of a variable rather than the contents of a variable. |