modules/portlib/src/main/native/port/shared/hystsl.c File Reference


Detailed Description

Static shared library.

#include <string.h>
#include <stdlib.h>
#include "hyport.h"
#include "hystatic.h"

Functions

UDATA VMCALL hysl_up_close_shared_library (struct HyPortLibrary *portLibrary, UDATA descriptor)
 Close a static library.
UDATA VMCALL hysl_up_open_shared_library (struct HyPortLibrary *portLibrary, char *name, UDATA *descriptor, BOOLEAN decorate)
 Opens a static library .
UDATA VMCALL hysl_up_lookup_name (struct HyPortLibrary *portLibrary, UDATA descriptor, char *name, UDATA *func, const char *argSignature)
 Search for a function named 'name' taking argCount in the static library 'descriptor'.
UDATA VMCALL hysl_split_open_shared_library (struct HyPortLibrary *portLibrary, char *name, UDATA *descriptor, BOOLEAN decorate)
 Opens a static/shared library .
UDATA VMCALL hysl_split_close_shared_library (struct HyPortLibrary *portLibrary, UDATA descriptor)
 Close a static or shared library.
UDATA VMCALL hysl_split_lookup_name (struct HyPortLibrary *portLibrary, UDATA descriptor, char *name, UDATA *func, const char *argSignature)
 Search for a function named 'name' taking argCount in the static/shared library 'descriptor'.


Function Documentation

UDATA VMCALL hysl_split_close_shared_library ( struct HyPortLibrary portLibrary,
UDATA  descriptor 
)

Close a static or shared library.

Parameters:
[in] portLibrary The port library.
[in] descriptor Library handle to close.
Returns:
0 on success, any other value on failure.

UDATA VMCALL hysl_split_lookup_name ( struct HyPortLibrary portLibrary,
UDATA  descriptor,
char *  name,
UDATA *  func,
const char *  argSignature 
)

Search for a function named 'name' taking argCount in the static/shared library 'descriptor'.

Parameters:
[in] portLibrary The port library.
[in] descriptor Library to search.
[in] name Function to look up.
[out] func Pointer to the function.
[in] argSignature Argument signature.
Returns:
0 on success, any other value on failure.
Note:
contents of func are undefined on failure.

UDATA VMCALL hysl_split_open_shared_library ( struct HyPortLibrary portLibrary,
char *  name,
UDATA *  descriptor,
BOOLEAN  decorate 
)

Opens a static/shared library .

Parameters:
[in] portLibrary The port library.
[in] name path Null-terminated string containing the library.
[out] descriptor Pointer to memory which is filled in with library handle on success.
[in] decorate Boolean value indicates whether name should be decorated if it contains path information and cannot be found.
Returns:
0 on success, any other value on failure.
Note:
contents of descriptor are undefined on failure.

UDATA VMCALL hysl_up_close_shared_library ( struct HyPortLibrary portLibrary,
UDATA  descriptor 
)

Close a static library.

Parameters:
[in] portLibrary The port library.
[in] descriptor Static library handle to close.
Returns:
0 on success, any other value on failure.

UDATA VMCALL hysl_up_lookup_name ( struct HyPortLibrary portLibrary,
UDATA  descriptor,
char *  name,
UDATA *  func,
const char *  argSignature 
)

Search for a function named 'name' taking argCount in the static library 'descriptor'.

Parameters:
[in] portLibrary The port library.
[in] descriptor Static library to search.
[in] name Function to look up.
[out] func Pointer to the function.
[in] argSignature Argument signature.
Returns:
0 on success, any other value on failure.
Note:
contents of func are undefined on failure.

UDATA VMCALL hysl_up_open_shared_library ( struct HyPortLibrary portLibrary,
char *  name,
UDATA *  descriptor,
BOOLEAN  decorate 
)

Opens a static library .

Parameters:
[in] portLibrary The port library.
[in] name path Null-terminated string containing the static library.
[out] descriptor Pointer to memory which is filled in with static-library handle on success.
[in] decorate Boolean value indicates whether name should be decorated if it contains path information and cannot be found.
Returns:
0 on success, any other value on failure.
Note:
contents of descriptor are undefined on failure.


Genereated on Tue Dec 9 14:12:59 2008 by Doxygen.

(c) Copyright 2005, 2008 The Apache Software Foundation or its licensors, as applicable.