class KJScript

ECMAScript interpreter. More...

Definition#include <kjs.h>
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods


Detailed Description

 KJScript ()

Create a new ECMAScript interpreter. You can later ask it to interprete code by passing it via evaluate.

 ~KJScript ()

Destructor

void  init ()

Force a "context switch". You usually do not need to do that, evaluate() does it too.

bool  evaluate (const char *code)

Asks the interpreter to evaluate a piece of code. If called more than once the state (global variables, functions etc.) will be preserved between each call.

Parameters:
codeis a string containing the code to be executed.

Returns: True if the code was evaluated successfully, false if an error occured.

bool  evaluate (const KJS::KJSO &thisV, const QChar *code, unsigned int length)

Same as above. Only differing in the arguments accepted.

Parameters:
codeis a pointer to an Unicode string containing the code to be executed.
lengthnumber of characters.

bool  evaluate (const KJS::UString &code)

Added for convenience in case you have the code in available in internal representation already.

Parameters:
codeis an Unicode string containing the code to be executed.

bool  call (const KJS::UString &func, const KJS::List &args)

Call the specified function directly, optionally passing args as a list of arguments. Return value and treatment of errors is analog to the evaluate() calls.

void  clear ()

Clear the interpreter's memory. Otherwise, function declarations and global variables will be remembered after each invokation of KJScript::evaluate.

KJS::ImpreturnValue ()

[const]

Returns: Return value from the last call to evaluate(). Null if there hasn't been any.

int  errorType ()

[const]

Returns: Return code from last call to evaluate(). 0 on success.

int  errorLine ()

[const]

Returns: Return line of last error. -1 if last call didn't have an error.

const char * errorMsg ()

[const]

Returns: Error message from last call to evaluate(). Empty string if no error occured.

bool  checkSyntax (const KJS::UString &code)

Check the syntax of a piece of code. Return true if the code could be parsed without errors, false otherwise. errorLine() will tell you approximately where the syntax error happened.

void  enableDebug ()

Adds a debug() function to the set of pre-defined properties. debug(arg) tries to convert 'arg' to a string and prints the result to stderr. If you want to debug self defined Host Objects this way you should provide them with a toString() method that returns a string.


Generated by: marc@yogi on Tue Mar 27 13:09:05 2001, using kdoc 2.0a48.