StrOps::Expand( StrBuf &, StrPtr &, StrDict & )
Expand “`%var%” strings into corresponding
“`val
” strings from a StrDict
.
Virtual? |
No |
|
Class |
||
Arguments |
|
the output string |
|
the input string |
|
|
the var/value pairs to look up |
|
Returns |
|
Notes
This function provides a way to quickly expand variables from a
StrDict
into a StrBuf
.
Example
This small program demonstrates the Expand()
method in an OutputStat()
implementation:
void MyClientUser::OutputStat( StrDict *varList ) { StrBuf s = StrBuf(); s.Set( "File: %depotFile% Rev: %rev%" ); StrBuf o = StrBuf(); StrOps::Expand( o, s, *varList ); StrOps::Dump( o ); } int main( int argc, char **argv ) { ClientApi client; MyClientUser ui; Error e; client.SetProtocol( "tag", "" ); client.Init( &e ); client.SetArgv( 1, ++argv ); client.Run( "files", &ui ); return client.Final( &e ); }
Executing the preceding code produces the following output:
% a.out * File: //depot/src/file1.c Rev: 4 File: //depot/src/file2.c Rev: 2