| OLD | NEW |
| 1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ | 1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
| 2 /* ***** BEGIN LICENSE BLOCK ***** | 2 /* ***** BEGIN LICENSE BLOCK ***** |
| 3 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 | 3 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
| 4 * | 4 * |
| 5 * The contents of this file are subject to the Mozilla Public License Version | 5 * The contents of this file are subject to the Mozilla Public License Version |
| 6 * 1.1 (the "License"); you may not use this file except in compliance with | 6 * 1.1 (the "License"); you may not use this file except in compliance with |
| 7 * the License. You may obtain a copy of the License at | 7 * the License. You may obtain a copy of the License at |
| 8 * http://www.mozilla.org/MPL/ | 8 * http://www.mozilla.org/MPL/ |
| 9 * | 9 * |
| 10 * Software distributed under the License is distributed on an "AS IS" basis, | 10 * Software distributed under the License is distributed on an "AS IS" basis, |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 ** API to static and dynamic linking. | 42 ** API to static and dynamic linking. |
| 43 */ | 43 */ |
| 44 #include "prtypes.h" | 44 #include "prtypes.h" |
| 45 | 45 |
| 46 PR_BEGIN_EXTERN_C | 46 PR_BEGIN_EXTERN_C |
| 47 | 47 |
| 48 typedef struct PRLibrary PRLibrary; | 48 typedef struct PRLibrary PRLibrary; |
| 49 | 49 |
| 50 typedef struct PRStaticLinkTable { | 50 typedef struct PRStaticLinkTable { |
| 51 const char *name; | 51 const char *name; |
| 52 void (*fp)(); | 52 void (*fp)(void); |
| 53 } PRStaticLinkTable; | 53 } PRStaticLinkTable; |
| 54 | 54 |
| 55 /* | 55 /* |
| 56 ** Change the default library path to the given string. The string is | 56 ** Change the default library path to the given string. The string is |
| 57 ** copied. This call will fail if it runs out of memory. | 57 ** copied. This call will fail if it runs out of memory. |
| 58 ** | 58 ** |
| 59 ** The string provided as 'path' is copied. The caller can do whatever is | 59 ** The string provided as 'path' is copied. The caller can do whatever is |
| 60 ** convenient with the argument when the function is complete. | 60 ** convenient with the argument when the function is complete. |
| 61 */ | 61 */ |
| 62 NSPR_API(PRStatus) PR_SetLibraryPath(const char *path); | 62 NSPR_API(PRStatus) PR_SetLibraryPath(const char *path); |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 201 NSPR_API(void*) PR_FindSymbol(PRLibrary *lib, const char *name); | 201 NSPR_API(void*) PR_FindSymbol(PRLibrary *lib, const char *name); |
| 202 | 202 |
| 203 /* | 203 /* |
| 204 ** Similar to PR_FindSymbol, except that the return value is a pointer to | 204 ** Similar to PR_FindSymbol, except that the return value is a pointer to |
| 205 ** a function, and not a pointer to void. Casting between a data pointer | 205 ** a function, and not a pointer to void. Casting between a data pointer |
| 206 ** and a function pointer is not portable according to the C standard. | 206 ** and a function pointer is not portable according to the C standard. |
| 207 ** Any function pointer can be cast to any other function pointer. | 207 ** Any function pointer can be cast to any other function pointer. |
| 208 ** | 208 ** |
| 209 ** This function does not modify the reference count of the library. | 209 ** This function does not modify the reference count of the library. |
| 210 */ | 210 */ |
| 211 typedef void (*PRFuncPtr)(); | 211 typedef void (*PRFuncPtr)(void); |
| 212 NSPR_API(PRFuncPtr) PR_FindFunctionSymbol(PRLibrary *lib, const char *name); | 212 NSPR_API(PRFuncPtr) PR_FindFunctionSymbol(PRLibrary *lib, const char *name); |
| 213 | 213 |
| 214 /* | 214 /* |
| 215 ** Finds a symbol in one of the currently loaded libraries. Given the | 215 ** Finds a symbol in one of the currently loaded libraries. Given the |
| 216 ** name of a procedure, return the address of the function that | 216 ** name of a procedure, return the address of the function that |
| 217 ** implements the procedure, and return the library that contains that | 217 ** implements the procedure, and return the library that contains that |
| 218 ** symbol, or NULL if no such function can be found. This does not find | 218 ** symbol, or NULL if no such function can be found. This does not find |
| 219 ** symbols in the main program (the ".exe"); use PR_AddStaticLibrary to | 219 ** symbols in the main program (the ".exe"); use PR_AddStaticLibrary to |
| 220 ** register symbols in the main program. | 220 ** register symbols in the main program. |
| 221 ** | 221 ** |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 253 ** Return the pathname of the file that the library "name" was loaded | 253 ** Return the pathname of the file that the library "name" was loaded |
| 254 ** from. "addr" is the address of a function defined in the library. | 254 ** from. "addr" is the address of a function defined in the library. |
| 255 ** | 255 ** |
| 256 ** The caller is responsible for freeing the result with PR_Free. | 256 ** The caller is responsible for freeing the result with PR_Free. |
| 257 */ | 257 */ |
| 258 NSPR_API(char *) PR_GetLibraryFilePathname(const char *name, PRFuncPtr addr); | 258 NSPR_API(char *) PR_GetLibraryFilePathname(const char *name, PRFuncPtr addr); |
| 259 | 259 |
| 260 PR_END_EXTERN_C | 260 PR_END_EXTERN_C |
| 261 | 261 |
| 262 #endif /* prlink_h___ */ | 262 #endif /* prlink_h___ */ |
| OLD | NEW |