CDT.hpp   CDT.hpp 
skipping to change at line 336 skipping to change at line 336
/** /**
@brief Push value into array @brief Push value into array
@param oValue - CDT object @param oValue - CDT object
*/ */
void PushBack(const CDT & oValue); void PushBack(const CDT & oValue);
/** /**
@brief Returns a boolean value telling whether object has a value @brief Returns a boolean value telling whether object has a value
@return true if object has a value, false - otherwise @return true if object has a value, false - otherwise
*/ */
bool Defined() const; bool Nonzero() const;
/** /**
@brief Provides range-check access to the data contained in CDT @brief Provides range-check access to the data contained in CDT
@param iPos - The index of the element @param iPos - The index of the element
@return Read/write reference to data @return Read/write reference to data
*/ */
CDT & At(const UINT_32 iPos); CDT & At(const UINT_32 iPos);
/** /**
@brief Provides range-check access to the data contained in CDT @brief Provides range-check access to the data contained in CDT
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 CTPP2Compiler.hpp   CTPP2Compiler.hpp 
skipping to change at line 190 skipping to change at line 190
@param iArgNum - number of arguments @param iArgNum - number of arguments
@param oDebugInfo - debug information object @param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured @return instruction pointer if success, -1 if any error occured
*/ */
INT_32 ExecuteSyscall(CCHAR_P szSyscallName, INT_32 ExecuteSyscall(CCHAR_P szSyscallName,
const UINT_32 iSyscallNameLength, const UINT_32 iSyscallNameLength,
const UINT_32 iArgNum, const UINT_32 iArgNum,
const VMDebugInfo & oDebugInfo = VMDebugInfo( )); const VMDebugInfo & oDebugInfo = VMDebugInfo( ));
/** /**
@brief Prepare before push hash or array variable
@param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured
*/
INT_32 PreparePushComplexVariable(const VMDebugInfo & oDebugInfo);
/**
@brief Clear after push hash or array variable
@param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured
*/
INT_32 ClearPushComplexVariable(const VMDebugInfo & oDebugInfo);
/**
@brief Push variable into stack @brief Push variable into stack
@param szVariableName - variable name @param szVariableName - variable name
@param iVariableNameLength - Length of variable name @param iVariableNameLength - Length of variable name
@param oDebugInfo - debug information object @param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured @return instruction pointer if success, -1 if any error occured
*/ */
INT_32 PushVariable(CCHAR_P szVariableName, INT_32 PushVariable(CCHAR_P szVariableName,
const UINT_32 iVariableNameLength, const UINT_32 iVariableNameLength,
const VMDebugInfo & oDebugInfo = VMDebugInfo()) ; const VMDebugInfo & oDebugInfo = VMDebugInfo()) ;
skipping to change at line 411 skipping to change at line 425
const UINT_32 iNSLength, const UINT_32 iNSLength,
const VMDebugInfo & oDebugInfo); const VMDebugInfo & oDebugInfo);
/** /**
@brief Push variable into stack @brief Push variable into stack
@param szNS - namespace @param szNS - namespace
@param iNSLength - namespace length @param iNSLength - namespace length
@param szVariableName - variable name @param szVariableName - variable name
@param iVariableNameLength - variable name length @param iVariableNameLength - variable name length
@param oDebugInfo - debug information object @param oDebugInfo - debug information object
@param bNoPushVariable - don't push variable, but return 0
@return instruction pointer if success, -1 if any error occured @return instruction pointer if success, -1 if any error occured
*/ */
INT_32 PushScopedVariable(CCHAR_P szNS, INT_32 PushScopedVariable(CCHAR_P szNS,
const UINT_32 iNSLength, const UINT_32 iNSLength,
CCHAR_P szName, CCHAR_P szName,
const UINT_32 iNameLength, const UINT_32 iNameLength,
CCHAR_P szFullVariable, CCHAR_P szFullVariable,
const UINT_32 iFullVariableLength, const UINT_32 iFullVariableLength,
const VMDebugInfo & oDebugInfo); const VMDebugInfo & oDebugInfo,
bool bNoPushVariable);
/** /**
@brief Push variable on stack into stack @brief Push variable on stack into stack
@param iStackPos - stack position @param iStackPos - stack position
@param oDebugInfo - debug information object @param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured @return instruction pointer if success, -1 if any error occured
*/ */
INT_32 PushStackVariable(const INT_32 iStackPos, INT_32 PushStackVariable(const INT_32 iStackPos,
const VMDebugInfo & oDebugInfo = VMDebugIn fo()); const VMDebugInfo & oDebugInfo = VMDebugIn fo());
/** /**
@brief Indirect hash call
@param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured
*/
INT_32 IndirectHashCall(const VMDebugInfo & oDebugInfo);
/**
@brief Indirect array call
@param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured
*/
INT_32 IndirectArrayCall(const VMDebugInfo & oDebugInfo);
/**
@brief Unconditional jump @brief Unconditional jump
@param iIP - new instruction pointer @param iIP - new instruction pointer
@param oDebugInfo - debug information object @param oDebugInfo - debug information object
@return instruction pointer if success, -1 if any error occured @return instruction pointer if success, -1 if any error occured
*/ */
INT_32 UncondJump(const UINT_32 iIP, INT_32 UncondJump(const UINT_32 iIP,
const VMDebugInfo & oDebugInfo = VMDebugInfo()); const VMDebugInfo & oDebugInfo = VMDebugInfo());
/** /**
@brief Jump if NOT Equal @brief Jump if NOT Equal
@param iIP - new instruction pointer @param iIP - new instruction pointer
 End of changes. 4 change blocks. 
1 lines changed or deleted 31 lines changed or added


 CTPP2Parser.hpp   CTPP2Parser.hpp 
skipping to change at line 245 skipping to change at line 245
IncludeMapType oParamTranslationMap; IncludeMapType oParamTranslationMap;
/** Template source name */ /** Template source name */
STLW::string sSourceName; STLW::string sSourceName;
/** Template source name ID */ /** Template source name ID */
UINT_32 iSourceNameId; UINT_32 iSourceNameId;
/** Foreach flag */ /** Foreach flag */
bool bInForeach; bool bInForeach;
/** Recursion level */ /** Recursion level */
INT_32 iRecursionLevel; INT_32 iRecursionLevel;
/** Complex variable flag */
bool bInsideComplexVariable;
/** No push variable on stack */
bool bNoPushVariable;
/** No map variable */
bool bNoMapVariable;
// Simple tokens: open and close tags, operators, variables, strings and numbers ////////////////////////////////////////////////////////////// //////////////////// // Simple tokens: open and close tags, operators, variables, strings and numbers ////////////////////////////////////////////////////////////// ////////////////////
/** /**
@brief Open tag ([Tt][Mm][Pp][Ll]) @brief Open tag ([Tt][Mm][Pp][Ll])
@param szData - current stream position @param szData - current stream position
@param szEnd - end of stream position @param szEnd - end of stream position
@return NULL if sequence not found or pointer to end of sequence @return NULL if sequence not found or pointer to end of sequence
*/ */
CCharIterator IsOpenTag(CCharIterator szData, CCharIterator szEnd); CCharIterator IsOpenTag(CCharIterator szData, CCharIterator szEnd);
 End of changes. 1 change blocks. 
0 lines changed or deleted 6 lines changed or added


 CTPP2SysHeaders.h   CTPP2SysHeaders.h 
skipping to change at line 81 skipping to change at line 81
#define CTPP_ESCAPE_BUFFER_LEN 1024 #define CTPP_ESCAPE_BUFFER_LEN 1024
#define CTPP_MAX_TEMPLATE_RECURSION_DEPTH 1024 #define CTPP_MAX_TEMPLATE_RECURSION_DEPTH 1024
#define ICONV_SUPPORT 1 #define ICONV_SUPPORT 1
#define ICONV_DISCARD_ILSEQ 1 #define ICONV_DISCARD_ILSEQ 1
#define ICONV_TRANSLITERATE 1 #define ICONV_TRANSLITERATE 1
#define CTPP_VERSION "2.6.15" #define CTPP_VERSION "2.7.0"
#define CTPP_IDENT "Dzoraget" #define CTPP_IDENT "Dzoraget"
#define CTPP_MASTER_SITE_URL "http://ctpp.havoc.ru/" #define CTPP_MASTER_SITE_URL "http://ctpp.havoc.ru/"
/* #undef THROW_EXCEPTION_IN_COMPARATORS */ /* #undef THROW_EXCEPTION_IN_COMPARATORS */
#endif /* _CTPP2_SYS_HEADERS_H__ */ #endif /* _CTPP2_SYS_HEADERS_H__ */
/* End. */ /* End. */
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 CTPP2VMOpcodes.h   CTPP2VMOpcodes.h 
skipping to change at line 100 skipping to change at line 100
// String ops. ///////// 0x-3X----- /////////////////////////////////////// ///////////////////////// // String ops. ///////// 0x-3X----- /////////////////////////////////////// /////////////////////////
#define CONCAT 0x03100000 // Concatenate strings #define CONCAT 0x03100000 // Concatenate strings
// Register ops. /////// 0x-4------ /////////////////////////////////////// ////////////////////////// // Register ops. /////// 0x-4------ /////////////////////////////////////// //////////////////////////
#define MOV 0x04010000 // Move value (register-to-register and stack-to-register) #define MOV 0x04010000 // Move value (register-to-register and stack-to-register)
#define MOVIINT 0x04020000 // Move indirect ARRAY to register #define MOVIINT 0x04020000 // Move indirect ARRAY to register
#define MOVISTR 0x04030000 // Move indirect HASH to register #define MOVISTR 0x04030000 // Move indirect HASH to register
#define IMOVINT 0x04040000 // Move register to indirect ARRAY #define IMOVINT 0x04040000 // Move register to indirect ARRAY
#define IMOVSTR 0x04050000 // Move register to indirect HASH #define IMOVSTR 0x04050000 // Move register to indirect HASH
#define MOVSIZE 0x04060000 // Move size of array or hash to regist er #define MOVSIZE 0x04060000 // Move size of array or hash to regist er
#define MOVIREG 0x04070000 // Move indirect ARRAY from REGISTER po #define MOVIREGI 0x04070000 // Move indirect ARRAY from REGISTER po
inted by REGISTER to another register inted by REGISTER to another register
#define MOVIREGS 0x04080000 // Move indirect HASH from REGISTER poi
nted by REGISTER to another register
// Comparison ops. ///// 0x-5-X---- /////////////////////////////////////// /////////////////////////// // Comparison ops. ///// 0x-5-X---- /////////////////////////////////////// ///////////////////////////
#define CMP 0x05010000 // Compare values, arithmetic #define CMP 0x05010000 // Compare values, arithmetic
#define SCMP 0x05020000 // Compare values, strging #define SCMP 0x05020000 // Compare values, strging
// Comparison flags //// 0x000X0000 /////////////////////////////////////// /////////////////////////// // Comparison flags //// 0x000X0000 /////////////////////////////////////// ///////////////////////////
#define FL_NE 0x00010000 // Not Equal, NO flags #define FL_NE 0x00010000 // Not Equal, NO flags
#define FL_EQ 0x00020000 // Equal #define FL_EQ 0x00020000 // Equal
#define FL_LT 0x00040000 // Less #define FL_LT 0x00040000 // Less
#define FL_GT 0x00080000 // Greater #define FL_GT 0x00080000 // Greater
skipping to change at line 143 skipping to change at line 144
#define RJGE (RJG | RJE) // Jump if >= #define RJGE (RJG | RJE) // Jump if >=
#define RJEVEN (RJXX | FL_PF) // Jump if Result is Even #define RJEVEN (RJXX | FL_PF) // Jump if Result is Even
#define RJODD (RJXX | FL_NPF) // Jump if Result is ODD #define RJODD (RJXX | FL_NPF) // Jump if Result is ODD
// Other ops. ////////// 0x-8-X---- /////////////////////////////////////// ///////////////////////// // Other ops. ////////// 0x-8-X---- /////////////////////////////////////// /////////////////////////
#define CLEAR 0x08010000 // Clear register #define CLEAR 0x08010000 // Clear register
#define OUTPUT 0x08020000 // Direct output a value to output coll ector #define OUTPUT 0x08020000 // Direct output a value to output coll ector
#define REPLACE 0x08030000 // Replace variable in stack or registe r #define REPLACE 0x08030000 // Replace variable in stack or registe r
#define EXIST 0x08040000 // Check existence of operand #define EXIST 0x08040000 // Check existence of operand
#define REPLINT 0x08050000 // Replace ARRAY variable in stack with
it's element
#define REPLSTR 0x08060000 // Replace HASH variable in stack with
it's element
#define XCHG 0x08070000 // Swap 2 values
#define DEFINED 0x08080000 // check undef value
// Sources ///////////// 0x-------X /////////////////////////////////////// /////////////////////////// // Sources ///////////// 0x-------X /////////////////////////////////////// ///////////////////////////
#define ARG_SRC_AR 0x00000000 // AR is source register #define ARG_SRC_AR 0x00000000 // AR is source register
#define ARG_SRC_BR 0x00000001 // BR is source register #define ARG_SRC_BR 0x00000001 // BR is source register
#define ARG_SRC_CR 0x00000002 // CR is source register #define ARG_SRC_CR 0x00000002 // CR is source register
#define ARG_SRC_DR 0x00000003 // DR is source register #define ARG_SRC_DR 0x00000003 // DR is source register
#define ARG_SRC_ER 0x00000004 // ER is source register #define ARG_SRC_ER 0x00000004 // ER is source register
#define ARG_SRC_FR 0x00000005 // FR is source register #define ARG_SRC_FR 0x00000005 // FR is source register
#define ARG_SRC_GR 0x00000006 // GR is source register #define ARG_SRC_GR 0x00000006 // GR is source register
#define ARG_SRC_HR 0x00000007 // HR is source register #define ARG_SRC_HR 0x00000007 // HR is source register
 End of changes. 2 change blocks. 
2 lines changed or deleted 10 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/