10617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen/* 20617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 30617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 40617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen This library is free software; you can redistribute it and/or 50617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen modify it under the terms of the GNU Library General Public 60617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen License as published by the Free Software Foundation; either 70617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen version 2 of the License, or (at your option) any later version. 80617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 90617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen This library is distributed in the hope that it will be useful, 100617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen but WITHOUT ANY WARRANTY; without even the implied warranty of 110617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 120617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen Library General Public License for more details. 130617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 140617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen You should have received a copy of the GNU Library General Public License 150617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen along with this library; see the file COPYING.LIB. If not, write to 160617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 170617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen Boston, MA 02110-1301, USA. 180617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen*/ 190617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 200617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen#ifndef qscriptfunction_p_h 210617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen#define qscriptfunction_p_h 220617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 230617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen#include "config.h" 240617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 250617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen#include "qscriptengine.h" 260617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen#include "qscriptvalue_p.h" 270617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 280617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenextern JSClassDefinition qt_NativeFunctionClass; 290617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenextern JSClassDefinition qt_NativeFunctionWithArgClass; 300617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 310617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenstruct QNativeFunctionData 320617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen{ 330617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen QNativeFunctionData(QScriptEnginePrivate* engine, QScriptEngine::FunctionSignature fun) 340617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen : engine(engine) 350617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen , fun(fun) 360617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen { 370617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen } 380617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 390617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen QScriptEnginePrivate* engine; 400617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen QScriptEngine::FunctionSignature fun; 410617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen}; 420617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 430617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenstruct QNativeFunctionWithArgData 440617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen{ 450617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen QNativeFunctionWithArgData(QScriptEnginePrivate* engine, QScriptEngine::FunctionWithArgSignature fun, void* arg) 460617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen : engine(engine) 470617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen , fun(fun) 480617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen , arg(arg) 490617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen { 500617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen } 510617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 520617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen QScriptEnginePrivate* engine; 530617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen QScriptEngine::FunctionWithArgSignature fun; 540617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen void* arg; 550617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen}; 560617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen 570617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen#endif 58