Simple Virtual Machine A simple but flexible virtual machine

Functions
SVM processor error
SVM processors

This module contains API functions to handle SVM processor error. More...

## Functions
SVM_FUNCTION void | svm_processor_current_raise_error (const void *svm, const SVM_Value_Interruption interruption)
| This function interrupts the current processor and the current instruction execution from any interruption. More...
SVM_FUNCTION void | svm_processor_current_raise_error_internal__raw (const void *svm, const SVM_Interruption_Internal interruption, const char *message)
| This function interrupts the current processor and the current instruction execution from an internal interruption. More...
SVM_FUNCTION void | svm_processor_current_raise_error_external__raw (const void *svm, const SVM_Value_PluginEntryPoint interruption, const char *message)
| This function interrupts the current processor and the current instruction execution from a plugin defined interruption. More...

## Detailed Description

This module contains API functions to handle SVM processor error.

## Function Documentation

## ◆ svm_processor_current_raise_error()

SVM_FUNCTION void svm_processor_current_raise_error | ( | const void * | svm,
|  | const SVM_Value_Interruption | interruption
| ) |  |

This function interrupts the current processor and the current instruction execution from any interruption.

Parameters

  [in] | svm | The SVM pointer passed as first argument of the callback function.
  [in] | interruption | The interruption to raise to the processor.

Exceptions

  FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.)

## ◆ svm_processor_current_raise_error_external__raw()

SVM_FUNCTION void svm_processor_current_raise_error_external__raw | ( | const void * | svm,
|  | const SVM_Value_PluginEntryPoint | interruption,
|  | const char * | message
| ) |  |

This function interrupts the current processor and the current instruction execution from a plugin defined interruption.

Parameters

  [in] | svm | The SVM pointer passed as first argument of the callback function.
  [in] | interruption | The interruption name to raise to the processor.
  [in] | message | The message for investigation of the root cause of the interruption.

The interruption type is automatically set to PLUGIN_INTERRUPTION.

The interruption kind is automatically set to SOFTWARE.

Exceptions

  FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.)
  FAILURE | interruption when the interruption parameter does not identify a plugin interruption.

## ◆ svm_processor_current_raise_error_internal__raw()

SVM_FUNCTION void svm_processor_current_raise_error_internal__raw | ( | const void * | svm,
|  | const SVM_Interruption_Internal | interruption,
|  | const char * | message
| ) |  |

This function interrupts the current processor and the current instruction execution from an internal interruption.

Parameters

  [in] | svm | The SVM pointer passed as first argument of the callback function.
  [in] | interruption | The interruption type to raise to the processor.
  [in] | message | The message for investigation of the root cause of the interruption.

The interruption kind is automatically set to SOFTWARE.

Exceptions

  FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.)
  FAILURE | interruption when the interruption type is PLUGIN_INTERRUPTION.