mirror of
				https://github.com/bytecodealliance/wasm-micro-runtime.git
				synced 2025-10-31 05:11:19 +00:00 
			
		
		
		
	 4e634bed3f
			
		
	
	
		4e634bed3f
		
			
		
	
	
	
	
		
			
			- Add necessary comments for doxygen to generate API documentation - Update README.md to add a link for End-user APIs documentation
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * Copyright (C) 2019 Intel Corporation.  All rights reserved.
 | |
|  * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 | |
|  */
 | |
| 
 | |
| /**
 | |
|  * @file   lib_export.h
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #ifndef _LIB_EXPORT_H_
 | |
| #define _LIB_EXPORT_H_
 | |
| 
 | |
| #include <stdint.h>
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| typedef struct NativeSymbol {
 | |
|     const char *symbol;
 | |
|     void *func_ptr;
 | |
|     const char *signature;
 | |
|     /* attachment which can be retrieved in native API by
 | |
|        calling wasm_runtime_get_function_attachment(exec_env) */
 | |
|     void *attachment;
 | |
| } NativeSymbol;
 | |
| 
 | |
| /* clang-format off */
 | |
| #define EXPORT_WASM_API(symbol) \
 | |
|     { #symbol, (void *)symbol, NULL, NULL }
 | |
| #define EXPORT_WASM_API2(symbol) \
 | |
|     { #symbol, (void *)symbol##_wrapper, NULL, NULL }
 | |
| 
 | |
| #define EXPORT_WASM_API_WITH_SIG(symbol, signature) \
 | |
|     { #symbol, (void *)symbol, signature, NULL }
 | |
| #define EXPORT_WASM_API_WITH_SIG2(symbol, signature) \
 | |
|     { #symbol, (void *)symbol##_wrapper, signature, NULL }
 | |
| 
 | |
| #define EXPORT_WASM_API_WITH_ATT(symbol, signature, attachment) \
 | |
|     { #symbol, (void *)symbol, signature, attachment }
 | |
| #define EXPORT_WASM_API_WITH_ATT2(symbol, signature, attachment) \
 | |
|     { #symbol, (void *)symbol##_wrapper, signature, attachment }
 | |
| /* clang-format on */
 | |
| 
 | |
| /**
 | |
|  * Get the exported APIs of base lib
 | |
|  *
 | |
|  * @param p_base_lib_apis return the exported API array of base lib
 | |
|  *
 | |
|  * @return the number of the exported API
 | |
|  */
 | |
| uint32_t
 | |
| get_base_lib_export_apis(NativeSymbol **p_base_lib_apis);
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 | |
| 
 | |
| #endif /* end of _LIB_EXPORT_H_ */
 |