class MyExprNode(ir.Node): input_type = [ rules.string(name='foo'), rules.number(name='bar'), ] def output_type(self): return MyExpr
class Log(Logarithm): input_type = [ number(allow_boolean=False), number(name='base', optional=True) ]
class Logarithm(RealUnaryOp): # superclass input_type = [number(allow_boolean=False)]