objs/kite_obj_locate.c File Reference

#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <sys/stat.h>
#include <dlfcn.h>
#include "kite_object.h"
#include "vm/kite_vm.h"

Defines

#define USER_MODULE_EXTENSION   ".kt"

Typedefs

typedef void(* kite_load_module )(kite_thread_t *, kite_object_t *)

Functions

void kite_set_dylib_path (char *path)
void kite_loader_register (kite_thread_t *thd, char *name, kite_load_module ptr)
kite_object_tkite_dereference_and_load (kite_thread_t *thd, char *class)

Variables

char * kite_dylib_path = LIBRARY_SEARCH_PATH

Define Documentation

#define USER_MODULE_EXTENSION   ".kt"


Typedef Documentation


Function Documentation

kite_object_t* kite_dereference_and_load ( kite_thread_t thd,
char *  name 
)

Load a Kite module (compiled or bytecode) into memory.

Parameters:
thd The current thread.
name The fully-qualified name of the module to load.
Returns:
The module itself, or NULL if a problem occurred.
Note:
If a problem occurred, thd->exception will be non-NULL.

References kite_add_property(), kite_dylib_path, KITE_FIND_PROPERTY, kite_new_class(), kite_new_exception(), kite_new_list(), kite_set_property(), kite_vm_call_method(), kite_vm_t::root_package, TRUE, kite_symtab_t::value, and kite_thread_t::vm.

Referenced by kite_new_boolean(), kite_new_exception(), kite_new_float(), kite_new_integer(), kite_new_list(), kite_new_method_bytecode(), kite_new_method_compiled(), kite_new_null(), kite_new_string(), kite_new_string_with_length(), kite_new_vm(), kite_vm_compile_from_file(), and kite_vm_compile_from_string().

void kite_loader_register ( kite_thread_t thd,
char *  name,
kite_load_module  ptr 
)

void kite_set_dylib_path ( char *  path  ) 

Set the dynamic library path.

Parameters:
path The new dynamic library path (separated by colons).

References kite_dylib_path.


Variable Documentation

char* kite_dylib_path = LIBRARY_SEARCH_PATH


Generated on Mon Apr 13 23:02:00 2009 for Kite by  doxygen 1.5.6