shine-runners-test/addons/very-simple-twitch/doc/Errors.md
2025-04-21 00:17:07 +10:00

1.8 KiB

Errors

Information

This page is to explain the use and implementation of errors in VST. Errors have 3 parameters for code, description and extra information.

  • error_code (enum @see VST_Error.VST_Code_Error) -> This parameter groups the types of errors in a general way.
  • description (String) -> The description of the error is a general description of the general grouping in human language.
  • info (String) -> The information is the particular description of the error. It should be used to add extra information about the particular error.

New errors

To add new errors you must first ask yourself if it is necessary to add a new code or not. If necessary add the code in the VST_Error.VST_Code_Error enumeration. To illustrate the error let's imagine that we have a function that updates the area of a triangle given a base and a height. This function updates an area parameter only if it is possible to calculate the area (the base or the height is greater than 0).

func calculateArea(base:int, heigth:int):
	if base <= 0:
		var error:VST_Error = VST_Error.new(VST_Error.VST_Code_Error.PARAM_ERROR, "base can't be less than or equals 0")
		push_warning(str(error))
		area = 0
	elif height <= 0:
		var error:VST_Error = VST_Error.new(VST_Error.VST_Code_Error.PARAM_ERROR, "height can't be less than or equals 0")
		push_warning(str(error))
		area = 0
	else
		area = (base*height)/2 

Error Codes

  • PARAM_ERROR Use this code for errors that have to do with invalid parameters. An int that should be a String or a String that cannot be empty.
  • TIMEOUT_ERROR Use this code when a timer runs out or there is no response from a system.
  • NETWORK_ERROR Use this code when there is a network error ( > 400 and < 500)
  • SERVER_ERROR Use this code when, in a network communication, the server is down or has a problem ( > 500 ).