Sometimes re-expansion of embedded BML might not be what you want. In that case, you can designate a block with a flag that will cause it to stop or limit the re-expansion of embedded calls.
If you add the {S} flag to the block you're
defining, the contents of it will not be re-evaluated afterwards. This is
useful mainly when you have blocks you are sure will never contain
BML to be expanded or properties to fill in,
and you want to save the overhead of trying to re-evaluate them.
This defines the companyname block as
static.
Combining the two yields:
Sometimes you want a block which fits somewhere between the
fully-dynamic {D} blocks and the completely-static
behavior of {S} blocks. Enter the
{R} block flag.
It expands pRoperties like those passed to a
{D}, {F}, or {P}
block, but doesn't expand BML that might be inserted
by one of those.