Name
SPVM::Document::NativeAPI::Type - Type Native APIs
Description
The type native APIs of SPVM are the APIs to manipulate types.
Usage
SPVM_API_TYPE* api_type = env->api->type;
Native APIs
can_assign
int32_t (*can_assign)(void* runtime, void* dist_basic_type, int32_t dist_type_dimension, int32_t dist_type_flag, void* src_basic_type, int32_t src_type_dimension, int32_t src_type_flag);
If a source type can be assigned to a dist type, returns 1. Otherwise returns 0.
The runtime
argument is a runtime object.
The dist_basic_type
argument is a basic type object.
The src_basic_type
argument is a basic type object.
get_type_width
int32_t (*get_type_width)(void* runtime, void* basic_type, int32_t dimension, int32_t flag);
get_type_width
int32_t (*get_type_width)(void* runtime, void* basic_type, int32_t dimension, int32_t flag);
Gets the width of a type.
is_object_type
int32_t (*is_object_type)(void* runtime, void* basic_type, int32_t type_dimension, int32_t flag);
If the type is object type, returns 1. Otherwise returns 0.
The runtime
argument is a runtime object.
The basic_type
argument is a basic type object.
is_any_object_type
int32_t (*is_any_object_type)(void* runtime, void* basic_type, int32_t type_dimension, int32_t flag);
If the type is any object type, returns 1. Otherwise returns 0.
The runtime
argument is a runtime object.
The basic_type
argument is a basic type object.
is_object_array_type
int32_t (*is_object_array_type)(void* runtime, void* basic_type, int32_t dimension, int32_t flag);
If the type is object array type, returns 1. Otherwise returns 0.
The runtime
argument is a runtime object.
The basic_type
argument is a basic type object.
is_any_object_array_type
int32_t (*is_any_object_array_type)(void* runtime, void* basic_type, int32_t type_dimension, int32_t flag);
If the type is any object array type, returns 1. Otherwise returns 0.
The runtime
argument is a runtime object.
The basic_type
argument is a basic type object.
Native API IDs
0 can_assign
1 get_type_width
2 is_object_type
3 is_any_object_type
4 is_object_array_type
5 is_any_object_array_type
Copyright & License
Copyright (c) 2023 Yuki Kimoto
MIT License