#! /usr/bin/env python # -*- coding: utf-8 -*- # vim:fenc=utf-8 # # Copyright © 2017 lafrite # # Distributed under terms of the MIT license. __all__ = ["OperatorError", "OPERATORS", "is_operator"] class OperatorError(Exception): pass OPERATORS = { "+": {"repr": "+", "arity": 2, "precedence": 0}, "-": {"repr": "-", "arity": 1, "precedence": 1}, "*": {"repr": "*", "arity": 2, "precedence": 2}, "/": {"repr": "/", "arity": 2, "precedence": 3}, "^": {"repr": "^", "arity": 2, "precedence": 4}, } def is_operator(string): """ Return whether a string is an operator or not :param string: string to test :returns: boolean :example: >>> is_operator("+") True >>> is_operator("i") False """ return string in OPERATORS.keys() # ----------------------------- # Reglages pour 'vim' # vim:set autoindent expandtab tabstop=4 shiftwidth=4: # cursor: 16 del