OLD | NEW |
| (Empty) |
1 // Copyright 2016 PDFium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | |
6 | |
7 #ifndef CORE_INCLUDE_FPDFAPI_CPDF_SIMPLE_PARSER_H_ | |
8 #define CORE_INCLUDE_FPDFAPI_CPDF_SIMPLE_PARSER_H_ | |
9 | |
10 #include "core/include/fxcrt/fx_string.h" | |
11 #include "core/include/fxcrt/fx_system.h" | |
12 | |
13 class CPDF_SimpleParser { | |
14 public: | |
15 CPDF_SimpleParser(const uint8_t* pData, FX_DWORD dwSize); | |
16 CPDF_SimpleParser(const CFX_ByteStringC& str); | |
17 | |
18 CFX_ByteStringC GetWord(); | |
19 | |
20 // Find the token and its |nParams| parameters from the start of data, | |
21 // and move the current position to the start of those parameters. | |
22 bool FindTagParamFromStart(const CFX_ByteStringC& token, int nParams); | |
23 | |
24 // For testing only. | |
25 FX_DWORD GetCurPos() const { return m_dwCurPos; } | |
26 | |
27 private: | |
28 void ParseWord(const uint8_t*& pStart, FX_DWORD& dwSize); | |
29 | |
30 const uint8_t* m_pData; | |
31 FX_DWORD m_dwSize; | |
32 FX_DWORD m_dwCurPos; | |
33 }; | |
34 | |
35 #endif // CORE_INCLUDE_FPDFAPI_CPDF_SIMPLE_PARSER_H_ | |
OLD | NEW |