fileRegEx Class Reference

The fileRegEx substitution model. More...

Inheritance diagram for fileRegEx:
Collaboration diagram for fileRegEx:

Public Member Functions

 TypeName ("fileRegEx")
 Runtime type information. More...
 
 fileRegEx (const dictionary &dict, const Time &time)
 Constructor. More...
 
virtual ~fileRegEx ()=default
 Destructor. More...
 
virtual bool valid (const word &keyName) const
 Return true of model applies to this keyName. More...
 
virtual bool apply (const word &key, string &buffer) const
 Apply substitutions to this string buffer. More...
 
virtual wordList keys () const
 Return a word list of the keys. More...
 
- Public Member Functions inherited from substitutionModel
 TypeName ("substitutionModel")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, substitutionModel, dictionary,(const dictionary &dict, const Time &time),(dict, time))
 
 substitutionModel (const dictionary &dict, const Time &time)
 Constructor. More...
 
virtual ~substitutionModel ()=default
 Destructor. More...
 
virtual bool update ()
 Update model local data. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from substitutionModel
static string keyify (const word &w)
 Return a key representation from a word. More...
 
static word cleanKey (const string &str)
 Clean the key text. More...
 
static wordList getKeys (string &buffer)
 Return all keys from a string buffer. More...
 
static void addBuiltinStr (const word &key, const string &value)
 Add a builtin to the hash table - does not overwrite. More...
 
template<class Type >
static void addBuiltin (const word &key, const Type &value)
 Add a builtin to the hash table - does not overwrite. More...
 
static bool containsBuiltin (const word &key)
 Return true if key is builtin. More...
 
static void setBuiltinStr (const word &key, const string &value)
 Set a builtin to the hash table. More...
 
template<class Type >
static void setBuiltin (const word &key, const Type &value)
 Set a builtin to the hash table. More...
 
static bool replaceBuiltin (const word &key, string &str)
 Replace key in string. More...
 
static bool replaceBuiltin (string &str)
 Replace all occurrences of key in string. More...
 
static void writeBuiltins (Ostream &os)
 Write all builtins to stream. More...
 
static autoPtr< substitutionModelNew (const dictionary &dict, const Time &time)
 Return a reference to the selected substitution model. More...
 
- Static Public Attributes inherited from substitutionModel
static const word KEY_BEGIN = "{{"
 Keyword starting characters. More...
 
static const word KEY_END = "}}"
 Keyword ending characters. More...
 
static HashTable< stringbuiltin_
 Built-in substitutions. More...
 
- Protected Attributes inherited from substitutionModel
const dictionary dict_
 Construction dictionary. More...
 
const Timetime_
 Reference to the time database. More...
 

Detailed Description

The fileRegEx substitution model.

The example below shows how the keyword executionTime is set by applying a regular expression (string) to a log file.

fileRegEx1
{
    // Mandatory entries
    type        fileRegEx;
    path        "log.simpleFoam";

    entries
    {
        executionTime    "ExecutionTime = (.*) s  Clock.*";
    }

    // Optional entries
    sectionSeparator    <string>;
    matchSeparator      <string>;
    lastMatch           <bool>;

    // Inherited entries
    ...
}

The entries mean:

Property Description Type Reqd Deflt
type Type name: functionObjectValue word yes -
path Path to file string yes -
entries Keyword regular-expression pairs dictionary yes -
sectionSeparator Marker used to separate files into sections string no "Time ="
matchSeparator Separator used to join multiple values string no " "
lastMatch Flag to use last file section bool no yes

The inherited entries are elaborated in:

Source files

Definition at line 136 of file fileRegEx.H.

Constructor & Destructor Documentation

◆ fileRegEx()

fileRegEx ( const dictionary dict,
const Time time 
)

Constructor.

Definition at line 39 of file fileRegEx.C.

References dict, and Foam::constant::electromagnetic::e.

◆ ~fileRegEx()

virtual ~fileRegEx ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "fileRegEx"  )

Runtime type information.

◆ valid()

bool valid ( const word keyName) const
virtual

Return true of model applies to this keyName.

Implements substitutionModel.

Definition at line 69 of file fileRegEx.C.

◆ apply()

◆ keys()

Foam::wordList keys ( ) const
virtual

Return a word list of the keys.

Implements substitutionModel.

Definition at line 150 of file fileRegEx.C.


The documentation for this class was generated from the following files: