![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
Namespaces | |
| namespace | anonymous_namespace{jit_executor_type_conversion.cc} | 
| namespace | anonymous_namespace{polyglot_array_wrapper.cc} | 
| namespace | anonymous_namespace{polyglot_column.cc} | 
| namespace | anonymous_namespace{polyglot_common_context.cc} | 
| namespace | anonymous_namespace{polyglot_date.cc} | 
| namespace | anonymous_namespace{polyglot_error.cc} | 
| namespace | anonymous_namespace{polyglot_file_system_wrapper.cc} | 
| namespace | anonymous_namespace{polyglot_function_wrapper.cc} | 
| namespace | anonymous_namespace{polyglot_iterator_wrapper.cc} | 
| namespace | anonymous_namespace{polyglot_map_wrapper.cc} | 
| namespace | anonymous_namespace{polyglot_object_wrapper.cc} | 
| namespace | anonymous_namespace{polyglot_result.cc} | 
| namespace | anonymous_namespace{polyglot_row.cc} | 
| namespace | anonymous_namespace{polyglot_seekable_channel_wrapper.cc} | 
| namespace | anonymous_namespace{polyglot_session.cc} | 
| namespace | anonymous_namespace{polyglot_utils.cc} | 
| namespace | database | 
Classes | |
| class | Closed_channel_exception | 
| class | Collectable | 
| Represents a data object to be associated to a Polyglot wrapper for C++ elements.  More... | |
| class | Collectable_registry | 
| When a Polyglot wrapper for a C++ object is created, a collectable instance is created to be passed to the Polyglot object (Java).  More... | |
| class | Column | 
| class | Date | 
| class | Directory_not_empty_exception | 
| class | File_already_exists_exception | 
| class | File_system_exception | 
| class | Garbage_collector | 
| The Garbage Collection logic is determined by the occurrence of events such as:  More... | |
| class | ICollectable | 
| Base collectable interface to be able to determine the type of a collectable object without with no need to cast it.  More... | |
| class | IDirectory_stream | 
| class | IFile_system | 
| class | Illegal_argument_exception | 
| class | IO_exception | 
| class | IPolyglot_iterator | 
| class | ISeekable_channel | 
| struct | IsolateArgs | 
| class | Java_script_interface | 
| class | Jit_executor_exception | 
| class | No_such_file_exception | 
| class | Not_directory_exception | 
| class | Object_bridge | 
| class | Object_method | 
| class | Polyglot_array_wrapper | 
| class | Polyglot_common_context | 
| Common context for GraalVM Languages.  More... | |
| class | Polyglot_error | 
| Represents polyglot errors that will be created from information available in the polyglot library state, it handles cases like:  More... | |
| class | Polyglot_file_system_wrapper | 
| class | Polyglot_function | 
| Utility class to allow wrapping a Polyglot function to be used from C++.  More... | |
| class | Polyglot_function_wrapper | 
| class | Polyglot_generic_error | 
| This class is used to represent errors occurred in the polyglot library while executing one of the functions in the API.  More... | |
| class | Polyglot_iterator_wrapper | 
| class | Polyglot_language | 
| The polyglot library may support several languages (guest languages), and provides out of the box C++ interfaces to handle common language elements, such as Objects, Maps, Arrays, Functions and primitive data types.  More... | |
| class | Polyglot_map_wrapper | 
| class | Polyglot_method_wrapper | 
| class | Polyglot_native_wrapper | 
| Exposure of C++ objects to the polyglot library is done through the usage of Proxy objects provided by the polyglot library.  More... | |
| class | Polyglot_object | 
| Utility class to allow wrapping a Polyglot object to be used from the C++.  More... | |
| class | Polyglot_object_wrapper | 
| class | Polyglot_scope | 
| Utility class to create a polyglot handle scope which is wiped out as soon as the instance goes out of scope in C++, this is used to avoid polluting the main scope with references preventing garbage collection from cleaning no longer needed objects.  More... | |
| class | Polyglot_seekable_channel_wrapper | 
| class | Polyglot_storage | 
| A container for stored values.  More... | |
| struct | Polyglot_type_bridger | 
| class | PolyResult | 
| class | Row | 
| class | Scoped_global | 
| Allows creating a temporary global variable with a random name which will only live until the execution context of the instance of this class ends.  More... | |
| class | Security_exception | 
| class | Session | 
| class | Store | 
| Helper class to handle polyglot values made permanent.  More... | |
| class | Unsupported_operation_exception | 
Typedefs | |
| typedef std::shared_ptr< Object_bridge > | Object_bridge_t | 
Enumerations | |
| enum class | Collectable_type {  OBJECT , FUNCTION , METHOD , ARRAY , MAP , ITERATOR }  | 
| enum class | Language { JAVASCRIPT } | 
Functions | |
| template<typename F , typename... Args> | |
| void | throw_if_error (F f, poly_thread thread, Args &&...args) | 
| size_t | parse_callback_args (poly_thread thread, poly_callback_info args, std::vector< poly_value > *argv, void **data) | 
| Parses the callback information sent by polyglot, returning if requested a vector with the arguments as well as the collectable associated to the call.  More... | |
| bool | get_data (poly_thread thread, poly_callback_info args, std::string_view name, void **data) | 
| Returns the collectable sent by Polyglot on a call to a C++ function.  More... | |
| bool | get_args_and_data (poly_thread thread, poly_callback_info args, std::string_view name, void **data, size_t expected_argc, std::vector< poly_value > *argv) | 
| Returns the collectable and arguments sent by Polyglot on a call to a C++ function.  More... | |
| bool | is_native_type (poly_thread thread, poly_value value, Collectable_type type, void **native_data=nullptr) | 
| Identifies if a given poly_value corresponds to a wrapped C++ element.  More... | |
| std::string | to_string (poly_thread thread, poly_value obj) | 
| Converts a polyglot string into a C++ string.  More... | |
| int64_t | to_int (poly_thread thread, poly_value obj) | 
| Converts a polyglot string into a C++ int64_t.  More... | |
| double | to_double (poly_thread thread, poly_value obj) | 
| Converts a polyglot string into a C++ double.  More... | |
| double | to_boolean (poly_thread thread, poly_value obj) | 
| Converts a polyglot string into a C++ double.  More... | |
| poly_value | poly_string (poly_thread thread, poly_context context, std::string_view data) | 
| Converts a string into a polyglot string.  More... | |
| poly_value | poly_bool (poly_thread thread, poly_context context, bool value) | 
| Converts a bool into a polyglot boolean.  More... | |
| poly_value | poly_int (poly_thread thread, poly_context context, int64_t value) | 
| Converts a bool into a polyglot boolean.  More... | |
| poly_value | poly_uint (poly_thread thread, poly_context context, uint64_t value) | 
| Converts a bool into a polyglot boolean.  More... | |
| poly_value | poly_double (poly_thread thread, poly_context context, double value) | 
| Converts a double into a polyglot double.  More... | |
| poly_value | poly_null (poly_thread thread, poly_context context) | 
| Returns a polyglot null value.  More... | |
| poly_value | poly_array (poly_thread thread, poly_context context, const std::vector< poly_value > &values) | 
| Converts an array of poly_values into a polyglot array.  More... | |
| std::vector< std::string > | get_member_keys (poly_thread thread, poly_context context, poly_value object) | 
| Retrieves the names of the members of the given poly_value.  More... | |
| void | throw_callback_exception (poly_thread thread, const char *error) | 
| The integration of the PolyglotAPI is mostly centered in the registration of C++ callbacks to implement the functionality for the different proxy objects.  More... | |
| poly_value | get_member (poly_thread thread, poly_value object, const std::string &name) | 
| Retrieves a member identified with name from the given object.  More... | |
| bool | is_executable (poly_thread thread, poly_value object) | 
| Returns true if the given value is executable.  More... | |
| bool | get_member (poly_thread thread, poly_value object, const char *name, poly_value *member) | 
| bool | is_object (poly_thread thread, poly_value object, std::string *class_name) | 
| template<typename Target , typename Config > | |
| static poly_value | polyglot_handler_fixed_args (poly_thread thread, poly_callback_info args) | 
| Generic handler to be used with functions that interact with the polyglot library, this is:  More... | |
| template<typename Target , typename Config > | |
| static poly_value | native_handler_fixed_args (poly_thread thread, poly_callback_info args) | 
| Generic handler to be used with pure native functions, no interaction with the polyglot library is done:  More... | |
| template<typename Target , typename Config > | |
| static poly_value | polyglot_handler_no_args (poly_thread thread, poly_callback_info args) | 
| Generic handler to be used with functions that interact with the polyglot library:  More... | |
| template<typename Target , typename Config > | |
| static poly_value | native_handler_no_args (poly_thread thread, poly_callback_info args) | 
| Generic handler to be used with pure native functions, no interaction with the polyglot library is done:  More... | |
| template<typename Target , typename Config > | |
| static poly_value | native_handler_variable_args (poly_thread thread, poly_callback_info args) | 
| Generic handler to be used with pure native functions, no interaction with the polyglot library is done:  More... | |
Variables | |
| const char * | k_key_message {"message"} | 
| const char * | k_origin_shell {"(shell)"} | 
| const char * | k_syntax_error {"SyntaxError"} | 
| const char * | k_interrupted_error {"InterruptedError"} | 
| typedef std::shared_ptr<Object_bridge> shcore::polyglot::Object_bridge_t | 
      
  | 
  strong | 
      
  | 
  strong | 
| bool shcore::polyglot::get_args_and_data | ( | poly_thread | thread, | 
| poly_callback_info | args, | ||
| std::string_view | name, | ||
| void ** | data, | ||
| size_t | expected_argc, | ||
| std::vector< poly_value > * | argv | ||
| ) | 
Returns the collectable and arguments sent by Polyglot on a call to a C++ function.
This function is meant to be used in C++ functions that expect a specific number of arguments since it centralizes a validation to ensure the expected arguments were received.
| bool shcore::polyglot::get_data | ( | poly_thread | thread, | 
| poly_callback_info | args, | ||
| std::string_view | name, | ||
| void ** | data | ||
| ) | 
Returns the collectable sent by Polyglot on a call to a C++ function.
This function is meant to be used in C++ functions that have no arguments.
It also centralizes a validation to ensure no arguments are sent by Polyglot.
| bool shcore::polyglot::get_member | ( | poly_thread | thread, | 
| poly_value | object, | ||
| const char * | name, | ||
| poly_value * | member | ||
| ) | 
| poly_value shcore::polyglot::get_member | ( | poly_thread | thread, | 
| poly_value | object, | ||
| const std::string & | name | ||
| ) | 
Retrieves a member identified with name from the given object.
| std::vector< std::string > shcore::polyglot::get_member_keys | ( | poly_thread | thread, | 
| poly_context | context, | ||
| poly_value | object | ||
| ) | 
Retrieves the names of the members of the given poly_value.
| bool shcore::polyglot::is_executable | ( | poly_thread | thread, | 
| poly_value | object | ||
| ) | 
Returns true if the given value is executable.
| bool shcore::polyglot::is_native_type | ( | poly_thread | thread, | 
| poly_value | value, | ||
| Collectable_type | type, | ||
| void ** | native_data | ||
| ) | 
Identifies if a given poly_value corresponds to a wrapped C++ element.
| bool shcore::polyglot::is_object | ( | poly_thread | thread, | 
| poly_value | object, | ||
| std::string * | class_name | ||
| ) | 
      
  | 
  static | 
Generic handler to be used with pure native functions, no interaction with the polyglot library is done:
      
  | 
  static | 
Generic handler to be used with pure native functions, no interaction with the polyglot library is done:
      
  | 
  static | 
Generic handler to be used with pure native functions, no interaction with the polyglot library is done:
| size_t shcore::polyglot::parse_callback_args | ( | poly_thread | thread, | 
| poly_callback_info | args, | ||
| std::vector< poly_value > * | argv, | ||
| void ** | data | ||
| ) | 
Parses the callback information sent by polyglot, returning if requested a vector with the arguments as well as the collectable associated to the call.
Returns the collectable and arguments sent by Polyglot on a call to a C++ function.
This function is meant to be used by a C++ function that does not require to validate the argument count.
| poly_value shcore::polyglot::poly_array | ( | poly_thread | thread, | 
| poly_context | context, | ||
| const std::vector< poly_value > & | values | ||
| ) | 
Converts an array of poly_values into a polyglot array.
| poly_value shcore::polyglot::poly_bool | ( | poly_thread | thread, | 
| poly_context | context, | ||
| bool | value | ||
| ) | 
Converts a bool into a polyglot boolean.
| poly_value shcore::polyglot::poly_double | ( | poly_thread | thread, | 
| poly_context | context, | ||
| double | value | ||
| ) | 
Converts a double into a polyglot double.
| poly_value shcore::polyglot::poly_int | ( | poly_thread | thread, | 
| poly_context | context, | ||
| int64_t | value | ||
| ) | 
Converts a bool into a polyglot boolean.
| poly_value shcore::polyglot::poly_null | ( | poly_thread | thread, | 
| poly_context | context | ||
| ) | 
Returns a polyglot null value.
| poly_value shcore::polyglot::poly_string | ( | poly_thread | thread, | 
| poly_context | context, | ||
| std::string_view | data | ||
| ) | 
Converts a string into a polyglot string.
| poly_value shcore::polyglot::poly_uint | ( | poly_thread | thread, | 
| poly_context | context, | ||
| uint64_t | value | ||
| ) | 
Converts a bool into a polyglot boolean.
      
  | 
  static | 
Generic handler to be used with functions that interact with the polyglot library, this is:
      
  | 
  static | 
Generic handler to be used with functions that interact with the polyglot library:
| void shcore::polyglot::throw_callback_exception | ( | poly_thread | thread, | 
| const char * | error | ||
| ) | 
The integration of the PolyglotAPI is mostly centered in the registration of C++ callbacks to implement the functionality for the different proxy objects.
Whenever an exception is reported from any of these callbacks, a CallbackException object is created in the PolyglotAPI.
This function is to report a callback exception from C++.
      
  | 
  inline | 
| double shcore::polyglot::to_boolean | ( | poly_thread | thread, | 
| poly_value | obj | ||
| ) | 
Converts a polyglot string into a C++ double.
| double shcore::polyglot::to_double | ( | poly_thread | thread, | 
| poly_value | obj | ||
| ) | 
Converts a polyglot string into a C++ double.
| int64_t shcore::polyglot::to_int | ( | poly_thread | thread, | 
| poly_value | obj | ||
| ) | 
Converts a polyglot string into a C++ int64_t.
| std::string shcore::polyglot::to_string | ( | poly_thread | thread, | 
| poly_value | obj | ||
| ) | 
Converts a polyglot string into a C++ string.
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline |