|
| ||||||||||||
Abstract base class for the worker classes behind the KMacroExpander namespace.
| KMacroExpanderBase ( QChar c = '%' )
| KMacroExpanderBase |
Constructor.
Parameters:
| c | escape char indicating start of macros, or QChar::null for none |
| ~KMacroExpanderBase ()
| ~KMacroExpanderBase |
[virtual]
Destructor.
| void expandMacros ( QString &str )
| expandMacros |
Perform safe macro expansion (substitution) on a string.
Parameters:
| str | the string in which macros are expanded in-place |
| bool expandMacrosShellQuote ( QString &str, uint &pos )
| expandMacrosShellQuote |
| bool expandMacrosShellQuote ( QString &str )
| expandMacrosShellQuote |
Same as above, but always starts at position 0, and unmatched closing parens and braces are treated as errors.
| void setEscapeChar ( QChar c )
| setEscapeChar |
Set the macro escape character.
Parameters:
| c | escape char indicating start of macros, or QChar::null if none |
| QChar escapeChar ()
| escapeChar |
[const]
Obtain the macro escape character.
Returns: escape char indicating start of macros, or QChar::null if none
| int expandPlainMacro ( const QString &str, uint pos, QStringList &ret )
| expandPlainMacro |
[protected virtual]
This function is called for every single char within the string if
the escape char is QChar::null. It should determine whether the
string starting at pos within str is a valid macro and return
the substitution value for it if so.
Parameters:
| str | the input string |
| pos | the offset within str
|
| ret | return value: the string to substitute for the macro |
Returns: if greater than zero, the number of chars at pos in str
to substitute with ret (i.e., a valid macro was found). if less
than zero, subtract this value from pos (to skip a macro, i.e.,
substitute it with itself). zero requests no special action.
| int expandEscapedMacro ( const QString &str, uint pos, QStringList &ret )
| expandEscapedMacro |
[protected virtual]
This function is called every time the escape char is found if it is
not QChar::null. It should determine whether the
string starting at pos witin str is a valid macro and return
the substitution value for it if so.
Parameters:
| str | the input string |
| pos | the offset within str. Note that this is the position of
the occurence of the escape char
|
| ret | return value: the string to substitute for the macro |
Returns: if greater than zero, the number of chars at pos in str
to substitute with ret (i.e., a valid macro was found). if less
than zero, subtract this value from pos (to skip a macro, i.e.,
substitute it with itself). zero requests no special action.