00001 /*---------------------------------------------------------------------------*\ 00002 ========= | 00003 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox 00004 \\ / O peration | 00005 \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. 00006 \\/ M anipulation | 00007 ------------------------------------------------------------------------------- 00008 License 00009 This file is part of OpenFOAM. 00010 00011 OpenFOAM is free software: you can redistribute it and/or modify it 00012 under the terms of the GNU General Public License as published by 00013 the Free Software Foundation, either version 3 of the License, or 00014 (at your option) any later version. 00015 00016 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT 00017 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00018 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00019 for more details. 00020 00021 You should have received a copy of the GNU General Public License 00022 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. 00023 00024 \*---------------------------------------------------------------------------*/ 00025 00026 00027 // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // 00028 00029 inline Foam::wordReListMatcher::wordReListMatcher 00030 ( 00031 const UList<wordRe>& lst 00032 ) 00033 : 00034 reList_(lst) 00035 {} 00036 00037 00038 // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // 00039 00040 inline Foam::label Foam::wordReListMatcher::size() const 00041 { 00042 return reList_.size(); 00043 } 00044 00045 00046 inline bool Foam::wordReListMatcher::empty() const 00047 { 00048 return reList_.empty(); 00049 } 00050 00051 00052 inline const Foam::UList<Foam::wordRe>& 00053 Foam::wordReListMatcher::operator()() const 00054 { 00055 return reList_; 00056 } 00057 00058 00059 inline bool Foam::wordReListMatcher::match 00060 ( 00061 const string& str, 00062 bool literalMatch 00063 ) const 00064 { 00065 const label nElem = reList_.size(); 00066 for (label elemI = 0; elemI < nElem; ++elemI) 00067 { 00068 if (reList_[elemI].match(str, literalMatch)) 00069 { 00070 return true; 00071 } 00072 } 00073 00074 return false; 00075 } 00076 00077 00078 // ************************ vim: set sw=4 sts=4 et: ************************ //