Op
All operations in SAL are passed around by subclasses of Op classes.
Op classes are templates, with parameters for argument and return
types. There are different Op classes with different numbers of
arguments and void/non-void return types. An op provides a "call"
function of the proper signature.
Base classes:
- Op_n: takes n+1 parameters for the n
argument types followed by the return type.
- Op_n_void: takes n parameters for the
argument types; no return value.
Application specific code inherits from these base classes as
appropriate. To make your code more readable, there is a tool that will set up classes for you.