diff options
Diffstat (limited to 'src/mesh/assimp-master/code/Common/RemoveComments.cpp')
-rw-r--r-- | src/mesh/assimp-master/code/Common/RemoveComments.cpp | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/src/mesh/assimp-master/code/Common/RemoveComments.cpp b/src/mesh/assimp-master/code/Common/RemoveComments.cpp deleted file mode 100644 index 4fae21c..0000000 --- a/src/mesh/assimp-master/code/Common/RemoveComments.cpp +++ /dev/null @@ -1,121 +0,0 @@ -/* -Open Asset Import Library (assimp) ----------------------------------------------------------------------- - -Copyright (c) 2006-2022, assimp team - -All rights reserved. - -Redistribution and use of this software in source and binary forms, -with or without modification, are permitted provided that the -following conditions are met: - -* Redistributions of source code must retain the above - copyright notice, this list of conditions and the - following disclaimer. - -* Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the - following disclaimer in the documentation and/or other - materials provided with the distribution. - -* Neither the name of the assimp team, nor the names of its - contributors may be used to endorse or promote products - derived from this software without specific prior - written permission of the assimp team. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ----------------------------------------------------------------------- -*/ - -/** - * @file RemoveComments.cpp - * @brief Defines the CommentRemover utility class - */ - -#include <assimp/RemoveComments.h> -#include <assimp/ParsingUtils.h> - -namespace Assimp { - -// ------------------------------------------------------------------------------------------------ -// Remove line comments from a file -void CommentRemover::RemoveLineComments(const char* szComment, char* szBuffer, char chReplacement /* = ' ' */) { - // validate parameters - ai_assert(nullptr != szComment); - ai_assert(nullptr != szBuffer); - ai_assert(*szComment); - - size_t len = strlen(szComment); - const size_t lenBuffer = strlen(szBuffer); - if (len > lenBuffer) { - len = lenBuffer; - } - - for(size_t i = 0; i < lenBuffer; i++) { - // skip over quotes - if (szBuffer[i] == '\"' || szBuffer[i] == '\'') - while (++i < lenBuffer && szBuffer[i] != '\"' && szBuffer[i] != '\''); - - if(lenBuffer - i < len) { - break; - } - - if (!strncmp(szBuffer + i,szComment,len)) { - while (i < lenBuffer && !IsLineEnd(szBuffer[i])) { - szBuffer[i++] = chReplacement; - } - } - } -} - -// ------------------------------------------------------------------------------------------------ -// Remove multi-line comments from a file -void CommentRemover::RemoveMultiLineComments(const char* szCommentStart, - const char* szCommentEnd,char* szBuffer, - char chReplacement) { - // validate parameters - ai_assert(nullptr != szCommentStart); - ai_assert(nullptr != szCommentEnd); - ai_assert(nullptr != szBuffer); - ai_assert(*szCommentStart); - ai_assert(*szCommentEnd); - - const size_t len = strlen(szCommentEnd); - const size_t len2 = strlen(szCommentStart); - - while (*szBuffer) { - // skip over quotes - if (*szBuffer == '\"' || *szBuffer == '\'') { - while (*szBuffer++ && *szBuffer != '\"' && *szBuffer != '\''); - } - - if (!strncmp(szBuffer,szCommentStart,len2)) { - while (*szBuffer) { - if (!::strncmp(szBuffer,szCommentEnd,len)) { - for (unsigned int i = 0; i < len;++i) { - *szBuffer++ = chReplacement; - } - - break; - } - *szBuffer++ = chReplacement; - } - continue; - } - ++szBuffer; - } -} - -} // !! Assimp |