|
AndroMeta
2.0.0
|
00001 /* 00002 * Copyright 2009-2012 AndroMeta LLC. All rights reserved. 00003 * 00004 * AndroMeta LLC retains all intellectual property and proprietary 00005 * rights to this software and related documentation and any modifications 00006 * thereto. Any use, reproduction, disclosure, or distribution of this 00007 * software and related documentation without an express license agreement 00008 * from AndroMeta LLC is strictly prohibited. 00009 * 00010 */ 00011 00018 #ifndef ANDROMETA_MPL_PARSER_H 00019 #define ANDROMETA_MPL_PARSER_H 00020 00021 #include <AndroMeta/MParser.h> 00022 00023 namespace Meta{ 00024 00025 class MMage; 00026 00031 class MPLParser : public MParser{ 00032 public: 00033 00043 MPLParser(size_t historySize=50, MMage* mage=0); 00044 00048 ~MPLParser(); 00049 00055 int parse(const mstr& code, const mstr& label="", mvar* tags=0); 00056 00062 int parseFile(const mstr& filePath, mvar* tags=0); 00063 00068 static bool isReservedName(const mstr& name); 00069 00070 private: 00071 MPLParser& operator=(const MPLParser&); 00072 MPLParser(const MPLParser&); 00073 00074 class MPLParser_* x_; 00075 }; 00076 00082 mnode mplcode(const mstr& code); 00083 00084 } // end namespace Meta 00085 00086 #endif // ANDROMETA_MPL_PARSER_H
1.7.6.1