⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qscriptcompiler.cpp

📁 奇趣公司比较新的qt/emd版本
💻 CPP
📖 第 1 页 / 共 4 页
字号:
void Compiler::iLoadUndefined(){    pushInstruction(QScriptInstruction::OP_LoadUndefined);}void Compiler::iLoadThis(){    QScriptValueImpl arg0;    m_eng->newNameId(&arg0, m_eng->idTable()->id_this);    pushInstruction(QScriptInstruction::OP_LoadThis, arg0);}void Compiler::iLoadNull(){    pushInstruction(QScriptInstruction::OP_LoadNull);}void Compiler::iLoadNumber(double number){    QScriptValueImpl arg0;    m_eng->newNumber(&arg0, number);    pushInstruction(QScriptInstruction::OP_LoadNumber, arg0);}void Compiler::iLoadString(QScriptNameIdImpl *id){    QScriptValueImpl arg0;    id->persistent = true;    m_eng->newNameId(&arg0, id);    pushInstruction(QScriptInstruction::OP_LoadString, arg0);}void Compiler::iDuplicate(){    pushInstruction(QScriptInstruction::OP_Duplicate);}void Compiler::iResolve(QScriptNameIdImpl *id){    QScriptValueImpl arg0;    id->persistent = true;    m_eng->newNameId(&arg0, id);    pushInstruction(QScriptInstruction::OP_Resolve, arg0);}void Compiler::iPutField(){    pushInstruction(QScriptInstruction::OP_PutField);}void Compiler::iCall(int argc){    QScriptValueImpl arg0;    m_eng->newInteger(&arg0, argc);    pushInstruction(QScriptInstruction::OP_Call, arg0);}void Compiler::iNew(int argc){    QScriptValueImpl arg0;    m_eng->newInteger(&arg0, argc);    pushInstruction(QScriptInstruction::OP_New, arg0);}void Compiler::iFetchField(){    pushInstruction(QScriptInstruction::OP_FetchField);}void Compiler::iFetchArguments(){    pushInstruction(QScriptInstruction::OP_FetchArguments);}void Compiler::iRet(){    pushInstruction(QScriptInstruction::OP_Ret);}void Compiler::iDeclareLocal(QScriptNameIdImpl *id, bool readOnly){    QScriptValueImpl arg0;    id->persistent = true;    m_eng->newNameId(&arg0, id);    QScriptValueImpl arg1;    m_eng->newInteger(&arg1, readOnly);    pushInstruction(QScriptInstruction::OP_DeclareLocal, arg0, arg1);}void Compiler::iAssign(){    pushInstruction(QScriptInstruction::OP_Assign);}void Compiler::iBitAnd(){    pushInstruction(QScriptInstruction::OP_BitAnd);}void Compiler::iBitOr(){    pushInstruction(QScriptInstruction::OP_BitOr);}void Compiler::iBitXor(){    pushInstruction(QScriptInstruction::OP_BitXor);}void Compiler::iLeftShift(){    pushInstruction(QScriptInstruction::OP_LeftShift);}void Compiler::iMod(){    pushInstruction(QScriptInstruction::OP_Mod);}void Compiler::iRightShift(){    pushInstruction(QScriptInstruction::OP_RightShift);}void Compiler::iURightShift(){    pushInstruction(QScriptInstruction::OP_URightShift);}void Compiler::iAdd(){    pushInstruction(QScriptInstruction::OP_Add);}void Compiler::iDiv(){    pushInstruction(QScriptInstruction::OP_Div);}void Compiler::iEqual(){    pushInstruction(QScriptInstruction::OP_Equal);}void Compiler::iGreatOrEqual(){    pushInstruction(QScriptInstruction::OP_GreatOrEqual);}void Compiler::iGreatThan(){    pushInstruction(QScriptInstruction::OP_GreatThan);}void Compiler::iLessOrEqual(){    pushInstruction(QScriptInstruction::OP_LessOrEqual);}void Compiler::iLessThan(){    pushInstruction(QScriptInstruction::OP_LessThan);}void Compiler::iMul(){    pushInstruction(QScriptInstruction::OP_Mul);}void Compiler::iNotEqual(){    pushInstruction(QScriptInstruction::OP_NotEqual);}void Compiler::iSub(){    pushInstruction(QScriptInstruction::OP_Sub);}void Compiler::iStrictEqual(){    pushInstruction(QScriptInstruction::OP_StrictEqual);}void Compiler::iStrictNotEqual(){    pushInstruction(QScriptInstruction::OP_StrictNotEqual);}void Compiler::iBranch(int index){    QScriptValueImpl arg0;    m_eng->newInteger(&arg0, index);    pushInstruction(QScriptInstruction::OP_Branch, arg0);}void Compiler::iBranchFalse(int index){    QScriptValueImpl arg0;    m_eng->newInteger(&arg0, index);    pushInstruction(QScriptInstruction::OP_BranchFalse, arg0);}void Compiler::iBranchTrue(int index){    QScriptValueImpl arg0;    m_eng->newInteger(&arg0, index);    pushInstruction(QScriptInstruction::OP_BranchTrue, arg0);}void Compiler::iNewClosure(AST::FunctionExpression *expr){    QScriptValueImpl arg0;    m_eng->newPointer(&arg0, expr);    pushInstruction(QScriptInstruction::OP_NewClosure, arg0);}void Compiler::iIncr(){    pushInstruction(QScriptInstruction::OP_Incr);}void Compiler::iDecr(){    pushInstruction(QScriptInstruction::OP_Decr);}void Compiler::iPop(){    pushInstruction(QScriptInstruction::OP_Pop);}void Compiler::iFetch(QScriptNameIdImpl *id){    if (m_generateFastArgumentLookup) {        int index = m_formals.indexOf(id);        if (index != -1) {            QScriptValueImpl arg0;            m_eng->newInteger(&arg0, index);            pushInstruction(QScriptInstruction::OP_Receive, arg0);            return;        }    }    QScriptValueImpl arg0;    id->persistent = true;    m_eng->newNameId(&arg0, id);    pushInstruction(QScriptInstruction::OP_Fetch, arg0);}void Compiler::iLoadTrue(){    pushInstruction(QScriptInstruction::OP_LoadTrue);}void Compiler::iLoadFalse(){    pushInstruction(QScriptInstruction::OP_LoadFalse);}void Compiler::iUnaryMinus(){    pushInstruction(QScriptInstruction::OP_UnaryMinus);}void Compiler::iUnaryPlus(){    pushInstruction(QScriptInstruction::OP_UnaryPlus);}void Compiler::iPostIncr(){    pushInstruction(QScriptInstruction::OP_PostIncr);}void Compiler::iPostDecr(){    pushInstruction(QScriptInstruction::OP_PostDecr);}void Compiler::iNewArray(){    pushInstruction(QScriptInstruction::OP_NewArray);}void Compiler::iNewObject(){    pushInstruction(QScriptInstruction::OP_NewObject);}void Compiler::iTypeOf(){    pushInstruction(QScriptInstruction::OP_TypeOf);}void Compiler::iDelete(){    pushInstruction(QScriptInstruction::OP_Delete);}void Compiler::iInstanceOf(){    pushInstruction(QScriptInstruction::OP_InstanceOf);}void Compiler::iInplaceAnd(){    pushInstruction(QScriptInstruction::OP_InplaceAnd);}void Compiler::iInplaceSub(){    pushInstruction(QScriptInstruction::OP_InplaceSub);}void Compiler::iInplaceDiv(){    pushInstruction(QScriptInstruction::OP_InplaceDiv);}void Compiler::iInplaceAdd(){    pushInstruction(QScriptInstruction::OP_InplaceAdd);}void Compiler::iInplaceLeftShift(){    pushInstruction(QScriptInstruction::OP_InplaceLeftShift);}void Compiler::iInplaceMod(){    pushInstruction(QScriptInstruction::OP_InplaceMod);}void Compiler::iInplaceMul(){    pushInstruction(QScriptInstruction::OP_InplaceMul);}void Compiler::iInplaceOr(){    pushInstruction(QScriptInstruction::OP_InplaceOr);}void Compiler::iInplaceRightShift(){    pushInstruction(QScriptInstruction::OP_InplaceRightShift);}void Compiler::iInplaceURightShift(){    pushInstruction(QScriptInstruction::OP_InplaceURightShift);}void Compiler::iInplaceXor(){    pushInstruction(QScriptInstruction::OP_InplaceXor);}void Compiler::iThrow(){    pushInstruction(QScriptInstruction::OP_Throw);}void Compiler::iLine(AST::Node *node){    if (! node)        return;    QScriptValueImpl arg0;    m_eng->newInteger(&arg0, node->startLine);    QScriptValueImpl arg1;    m_eng->newInteger(&arg1, node->startColumn);    pushInstruction(QScriptInstruction::OP_Line, arg0, arg1);}void Compiler::iBitNot(){    pushInstruction(QScriptInstruction::OP_BitNot);}void Compiler::iNot(){    pushInstruction(QScriptInstruction::OP_Not);}void Compiler::iNewRegExp(QScriptNameIdImpl *pattern){    QScriptValueImpl arg0;    pattern->persistent = true;    m_eng->newNameId(&arg0, pattern);    pushInstruction(QScriptInstruction::OP_NewRegExp, arg0);}void Compiler::iNewRegExp(QScriptNameIdImpl *pattern, QScriptNameIdImpl *flags){    QScriptValueImpl arg0;    pattern->persistent = true;    m_eng->newNameId(&arg0, pattern);    QScriptValueImpl arg1;    flags->persistent = true;    m_eng->newNameId(&arg1, flags);    pushInstruction(QScriptInstruction::OP_NewRegExp, arg0, arg1);}void Compiler::iNewEnumeration(){    pushInstruction(QScriptInstruction::OP_NewEnumeration);}void Compiler::iToFirstElement(){    pushInstruction(QScriptInstruction::OP_ToFirstElement);}void Compiler::iHasNextElement(){    pushInstruction(QScriptInstruction::OP_HasNextElement);}void Compiler::iNextElement(){    pushInstruction(QScriptInstruction::OP_NextElement);}void Compiler::iEnterWith(){    pushInstruction(QScriptInstruction::OP_EnterWith);}void Compiler::iLeaveWith(){    pushInstruction(QScriptInstruction::OP_LeaveWith);}void Compiler::iBeginCatch(QScriptNameIdImpl *id){    QScriptValueImpl arg0;    id->persistent = true;    m_eng->newNameId(&arg0, id);    pushInstruction(QScriptInstruction::OP_BeginCatch, arg0);}void Compiler::iEndCatch(){    pushInstruction(QScriptInstruction::OP_EndCatch);}void Compiler::iSync(){    pushInstruction(QScriptInstruction::OP_Sync);}void Compiler::iHalt(){    pushInstruction(QScriptInstruction::OP_Halt);}void Compiler::iMakeReference(){    pushInstruction(QScriptInstruction::OP_MakeReference);}void Compiler::iIn(){    pushInstruction(QScriptInstruction::OP_In);}void Compiler::iNop(){    pushInstruction(QScriptInstruction::OP_Nop);}void Compiler::iNewString(QScriptNameIdImpl *id){    QScriptValueImpl arg0;    id->persistent = true;    m_eng->newNameId(&arg0, id);    pushInstruction(QScriptInstruction::OP_NewString, arg0);}Compiler::Loop *Compiler::findLoop(QScriptNameIdImpl *name){    if (! name)        return m_activeLoop;    QMap<AST::Statement*, Loop>::iterator it = m_loops.begin();    for (; it != m_loops.end(); ++it) {        Loop &loop = *it;        if (loop.name == name)            return &loop;    }    return 0;}} // namespace QScript#endif // QT_NO_SCRIPT

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -