Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Development
openfoam
Commits
cabb079f
Commit
cabb079f
authored
Dec 08, 2008
by
Mark Olesen
Browse files
small changes to dictionaryTest to test regexs
parent
4f1bb834
Changes
4
Hide whitespace changes
Inline
Side-by-side
applications/test/dictionary/dictionaryTest.C
View file @
cabb079f
...
...
@@ -30,6 +30,7 @@ Description
\*---------------------------------------------------------------------------*/
#include
"IOstreams.H"
#include
"IOobject.H"
#include
"IFstream.H"
#include
"dictionary.H"
...
...
@@ -40,18 +41,12 @@ using namespace Foam;
int
main
(
int
argc
,
char
*
argv
[])
{
IFstream
dictStream
(
"testDict"
);
dictionary
testDict
(
dictStream
);
Info
<<
dictionary
(
IFstream
(
"testDict"
)())
<<
endl
;
I
nfo
<<
testDict
<<
endl
;
I
Oobject
::
writeDivider
(
Info
)
;
{
dictionary
someDict
;
someDict
.
add
(
keyType
(
"a.*"
,
true
),
"subdictValue"
);
dictionary
dict
;
dict
.
add
(
"someDict"
,
someDict
);
dict
.
add
(
keyType
(
".*"
,
true
),
"parentValue"
);
dictionary
dict
(
IFstream
(
"testDictRegex"
)());
Info
<<
"dict:"
<<
dict
<<
endl
;
...
...
@@ -64,6 +59,18 @@ int main(int argc, char *argv[])
Info
<<
"Recursive wildcard find
\"
def
\"
in sub directory : "
<<
dict
.
subDict
(
"someDict"
).
lookup
(
"def"
,
true
)
<<
endl
;
Info
<<
"Recursive wildcard find
\"
foo
\"
in sub directory : "
<<
dict
.
subDict
(
"someDict"
).
lookup
(
"foo"
,
true
)
<<
endl
;
Info
<<
"Recursive wildcard find
\"
fooz
\"
in sub directory : "
<<
dict
.
subDict
(
"someDict"
).
lookup
(
"fooz"
,
true
)
<<
endl
;
Info
<<
"Recursive wildcard find
\"
bar
\"
in sub directory : "
<<
dict
.
subDict
(
"someDict"
).
lookup
(
"bar"
,
true
)
<<
endl
;
Info
<<
"Recursive wildcard find
\"
xxx
\"
in sub directory : "
<<
dict
.
subDict
(
"someDict"
).
lookup
(
"xxx"
,
true
)
<<
endl
;
}
return
0
;
...
...
applications/test/dictionary/testDictRegex
0 → 100644
View file @
cabb079f
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object testDictRegex;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#inputMode merge
".*" parentValue1;
"[n-z].*" parentValue2;
"f.*" parentValue3;
someDict
{
foo subdictValue0;
bar $f.*; // should this really match 'foo'?
// result is dependent on insert order!
"a.*c" subdictValue3;
"ab.*" subdictValue2;
"a.*" subdictValue1;
abcd subdictValue4;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
src/OpenFOAM/db/dictionary/dictionary.C
View file @
cabb079f
...
...
@@ -697,7 +697,7 @@ bool Foam::dictionary::changeKeyword
IDLList
<
entry
>::
replace
(
iter2
(),
iter
());
delete
iter2
();
hashedEntries_
.
erase
(
iter2
);
}
else
{
...
...
src/OpenFOAM/db/dictionary/dictionary.H
View file @
cabb079f
...
...
@@ -163,16 +163,16 @@ public:
dictionary
(
Istream
&
);
//- Construct as copy given the parent dictionary
dictionary
(
const
dictionary
&
parentDict
,
const
dictionary
&
dict
);
dictionary
(
const
dictionary
&
parentDict
,
const
dictionary
&
);
//- Construct top-level dictionary as copy
dictionary
(
const
dictionary
&
dict
);
dictionary
(
const
dictionary
&
);
//- Construct and return clone
Foam
::
autoPtr
<
dictionary
>
clone
()
const
;
//- Construct top-level dictionary on freestore from Istream
static
Foam
::
autoPtr
<
dictionary
>
New
(
Istream
&
is
);
static
Foam
::
autoPtr
<
dictionary
>
New
(
Istream
&
);
// Destructor
...
...
@@ -211,12 +211,12 @@ public:
//- Search dictionary for given keyword
// If recursive search parent dictionaries
bool
found
(
const
word
&
keyword
,
bool
recursive
=
false
)
const
;
bool
found
(
const
word
&
,
bool
recursive
=
false
)
const
;
//- Find and return an entry data stream pointer if present
// otherwise return NULL.
// If recursive search parent dictionaries.
If wildCardMatch
// use wildcards.
// If recursive search parent dictionaries.
//
If wildCardMatch
use wildcards.
const
entry
*
lookupEntryPtr
(
const
word
&
,
...
...
@@ -226,8 +226,8 @@ public:
//- Find and return an entry data stream pointer for manipulation
// if present otherwise return NULL.
// If recursive search parent dictionaries.
If wildCardMatch
// use wildcards.
// If recursive search parent dictionaries.
//
If wildCardMatch
use wildcards.
entry
*
lookupEntryPtr
(
const
word
&
,
...
...
@@ -236,8 +236,8 @@ public:
);
//- Find and return an entry data stream if present otherwise error.
// If recursive search parent dictionaries.
If wildCardMatch
// use wildcards.
// If recursive search parent dictionaries.
//
If wildCardMatch
use wildcards.
const
entry
&
lookupEntry
(
const
word
&
,
...
...
@@ -331,13 +331,13 @@ public:
//- Add a scalar entry
// optionally overwrite an existing entry
void
add
(
const
keyType
&
,
const
scalar
,
bool
overwrite
=
false
);
void
add
(
const
keyType
&
,
const
scalar
,
bool
overwrite
=
false
);
//- Add a dictionary entry
// optionally merge with an existing sub-dictionary
void
add
(
const
keyType
&
keyword
,
const
keyType
&
,
const
dictionary
&
,
bool
mergeEntry
=
false
);
...
...
@@ -345,7 +345,7 @@ public:
//- Add a T entry
// optionally overwrite an existing entry
template
<
class
T
>
void
add
(
const
keyType
&
keyword
,
const
T
&
,
bool
overwrite
=
false
);
void
add
(
const
keyType
&
,
const
T
&
,
bool
overwrite
=
false
);
//- Assign a new entry, overwrite any existing entry
void
set
(
entry
*
);
...
...
@@ -354,14 +354,14 @@ public:
void
set
(
const
entry
&
);
//- Assign a dictionary entry, overwrite any existing entry
void
set
(
const
keyType
&
keyword
,
const
dictionary
&
);
void
set
(
const
keyType
&
,
const
dictionary
&
);
//- Assign a T entry, overwrite any existing entry
template
<
class
T
>
void
set
(
const
keyType
&
keyword
,
const
T
&
);
void
set
(
const
keyType
&
,
const
T
&
);
//- Remove an entry specified by keyword
bool
remove
(
const
word
&
keyword
);
bool
remove
(
const
word
&
);
//- Change the keyword for an entry,
// optionally forcing overwrite of an existing entry
...
...
@@ -369,7 +369,7 @@ public:
(
const
keyType
&
oldKeyword
,
const
keyType
&
newKeyword
,
bool
forceOverwrite
=
false
bool
forceOverwrite
=
false
);
//- Merge entries from the given dictionary.
...
...
@@ -382,7 +382,7 @@ public:
// Write
void
write
(
Ostream
&
os
,
bool
subDict
=
true
)
const
;
void
write
(
Ostream
&
,
bool
subDict
=
true
)
const
;
// Member Operators
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment