Types Intro
arc uses argument type hints for data validation / conversion. For example, say we want to write a command that can sum two numbers together:
examples/add.py
if the input fails to validate, arc will report a user-friendly error for the type
import arc
@arc.command
def add(val1: int, val2: int):
arc.print(f"The answer is: {val1 + val2}")
add()
$ python add.py 5 not-a-number
USAGE
add.py [-h] val1 val2
invalid value for val2: must be an integer (invalid literal for int() with base 10: 'not-a-number')
Note
if a parameter does not specify a type, arc implicitly types it as str
.