예제 #1
0
void Navigator::syncFunctionNav()
{
    m_syncTimer->stop();

    if (FunctionDom fun = currentFunction())
    {
        if ( m_part->widget()->doFollowEditor() )
        {
            ItemDom dom(fun);
            m_part->jumpedToItem( dom );
        }

        if( !fun->isFunctionDefinition() ) {
        if (m_functionNavDecls[fullFunctionDeclarationName(fun)])
        {
            m_part->m_functionsnav->view()->blockSignals(true);
            m_part->m_functionsnav->view()->setCurrentActiveItem(m_functionNavDecls[fullFunctionDeclarationName(fun)]);
            m_part->m_functionsnav->view()->blockSignals(false);
        }
        } else {
        if (m_functionNavDefs[fullFunctionDeclarationName(fun)])
        {
            m_part->m_functionsnav->view()->blockSignals(true);
            m_part->m_functionsnav->view()->setCurrentActiveItem(m_functionNavDefs[fullFunctionDeclarationName(fun)]);
            m_part->m_functionsnav->view()->blockSignals(false);
        }
        }
    }
    else
        m_part->m_functionsnav->view()->setCurrentText(NAV_NODEFINITION);
}
예제 #2
0
int main() {
    functions.push_back(inc);
    functions.push_back(dec);
    currentFunction = functions[0];
    currentFunction(args {args::A, 1, 2});
    functions[1](args {args::B, 0.5});
    printf("%d\n", num);
    return 0;
}
예제 #3
0
파일: context.cpp 프로젝트: kamanov/Shared
void Context::declare(AstVar* var) {
  InterpreterFunction* function = currentFunction();
  uint16_t functionId = function->id();
  uint16_t localsNumber = static_cast<uint16_t>(function->localsNumber());
  VarInfo* info = new VarInfo(functionId, localsNumber++);
  function->setLocalsNumber(localsNumber);
  var->setInfo(info);
  varInfos_.push_back(info);
}
예제 #4
0
// Fitting funtion used for fitting
// par[0] is shifted time
float ElectronSimulation::fittingFunction(double *x, double *par)
{
    // These values must be doubles here
    double shapingTime = 40.0;
    double shapingPower = 1.0;

    double currentX[1] = {x[0] - par[0]};
    double currentParameters[2] = {shapingPower, shapingTime};

    return (par[1] * currentFunction(currentX, currentParameters)) + par[2];
}
예제 #5
0
void Navigator::slotSyncWithEditor()
{
    kdDebug(9003) << k_funcinfo << endl;

    if (FunctionDom fun = currentFunction())
    {
        m_part->mainWindow()->raiseView( m_part->widget() );

        ItemDom dom(fun);
        m_part->jumpedToItem( dom );
    }
}
예제 #6
0
파일: context.cpp 프로젝트: kamanov/Shared
uint16_t Context::declareTemporary() {
  InterpreterFunction* function = currentFunction();
  uint16_t localsNumber = static_cast<uint16_t>(function->localsNumber());
  function->setLocalsNumber(localsNumber + 1);
  return localsNumber;
}