diff options
author | Gregor Hartmann <gh@openoffice.org> | 2001-12-05 10:12:31 +0000 |
---|---|---|
committer | Gregor Hartmann <gh@openoffice.org> | 2001-12-05 10:12:31 +0000 |
commit | 031ef7dbc2fbb8bc25f4d04e23ccb640cbc6bdc6 (patch) | |
tree | 36037f3afc36468ca36b3cbebb423c6c15dd3326 /transex3/source/tagtest.cxx | |
parent | 8b3ebde9d3e093c4463a6ab49a6e91981235dd59 (diff) |
new handling of meta tags
Diffstat (limited to 'transex3/source/tagtest.cxx')
-rw-r--r-- | transex3/source/tagtest.cxx | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/transex3/source/tagtest.cxx b/transex3/source/tagtest.cxx index 7997d52639..f206498751 100644 --- a/transex3/source/tagtest.cxx +++ b/transex3/source/tagtest.cxx @@ -2,9 +2,9 @@ * * $RCSfile: tagtest.cxx,v $ * - * $Revision: 1.3 $ + * $Revision: 1.4 $ * - * last change: $Author: gh $ $Date: 2001-11-28 13:03:52 $ + * last change: $Author: gh $ $Date: 2001-12-05 11:12:31 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -739,38 +739,48 @@ void LingTest::CheckTags( TokenList aReference, TokenList aTestee, ParserMessage */ // filter uninteresting Tags + Token aMetaTokens = 0; i=0; while ( i < aReference.Count() ) { Token aToken = aReference.GetObject( i ); Token aTokenGroup = TAG_GROUP( aToken ); if ( TAG_GROUP_PROGSWITCH == aTokenGroup - || TAG_GROUP_META == aTokenGroup || TAG_REFINSERT == aToken || TAG_REFSTART == aToken || TAG_NAME == aToken || TAG_HREF == aToken || TAG_AVIS == aToken - || TAG_AHID == aToken ) + || TAG_AHID == aToken + || ( TAG_GROUP_META == aTokenGroup && (aMetaTokens & aToken) == aToken ) ) + { i++; + if ( TAG_GROUP_META == aTokenGroup ) + aMetaTokens |= aToken; + } else aReference.Remove( i ); } + aMetaTokens = 0; i=0; while ( i < aTestee.Count() ) { Token aToken = aTestee.GetObject( i ); Token aTokenGroup = TAG_GROUP( aToken ); if ( TAG_GROUP_PROGSWITCH == aTokenGroup - || TAG_GROUP_META == aTokenGroup || TAG_REFINSERT == aToken || TAG_REFSTART == aToken || TAG_NAME == aToken || TAG_HREF == aToken || TAG_AVIS == aToken - || TAG_AHID == aToken ) + || TAG_AHID == aToken + || ( TAG_GROUP_META == aTokenGroup && (aMetaTokens & aToken) == aToken ) ) + { i++; + if ( TAG_GROUP_META == aTokenGroup ) + aMetaTokens |= aToken; + } else aTestee.Remove( i ); } |