%global _empty_manifest_terminate_build 0 Name: python-cexprtk Version: 0.4.1 Release: 1 Summary: Mathematical expression parser: cython wrapper around the 'C++ Mathematical Expression Toolkit Library' License: CPL URL: https://github.com/mjdrushton/cexprtk Source0: https://mirrors.nju.edu.cn/pypi/web/packages/8e/59/9cf2113ce3a7064473475ad5ab811ae5dc7a15f159e54bc2b2b17598b74d/cexprtk-0.4.1.tar.gz %description ## API Reference For information about expressions supported by `cexprtk` please refer to the original C++ [ExprTK][] documentation: ### Class Reference #### class Expression: Class representing mathematical expression. * Following instantiation, the expression is evaluated calling the expression or invoking its `value()` method. * The variable values used by the Expression can be modified through the `variables` property of the `Symbol_Table` instance associated with the expression. The `Symbol_Table` can be accessed using the `Expression.symbol_table` property. ##### Defining unknown symbol-resolver: The `unknown_symbol_resolver_callback` argument to the `Expression` constructor accepts a callable which is invoked whenever a symbol (i.e. a variable or a constant), is not found in the `Symbol_Table` given by the `symbol_table` argument. The `unknown_symbol_resolver_callback` can be used to provide a value for the missing value or to set an error condition. The callable should have following signature: ```python def callback(symbol_name): ``` Where `symbol_name` is a string identifying the missing symbol. The callable should return a tuple of the form: ```python (HANDLED_FLAG, USR_SYMBOL_TYPE, SYMBOL_VALUE, ERROR_STRING) ``` Where: * `HANDLED_FLAG` is a boolean: + `True` indicates that callback was able handle the error condition and that `SYMBOL_VALUE` should be used for the missing symbol. + `False`, flags and error condition, the reason why the unknown symbol could not be resolved by the callback is described by `ERROR_STRING`. * `USR_SYMBOL_TYPE` gives type of symbol (constant or variable) that should be added to the `symbol_table` when unkown symbol is resolved. Value should be one of those given in `cexprtk.USRSymbolType`. e.g. + `cexprtk.USRSymbolType.VARIABLE` + `cexprtk.USRSymbolType.CONSTANT` * `SYMBOL_VALUE`, floating point value that should be used when resolving missing symbol. * `ERROR_STRING` when `HANDLED_FLAG` is `False` this can be used to describe error condition. ##### def __init__(self, *expression*, *symbol_table*, *unknown_symbol_resolver_callback* = None): Instantiate `Expression` from a text string giving formula and `Symbol_Table` instance encapsulating variables and constants used by the expression. __Parameters:__ * __expression__ (*str*) String giving expression to be calculated. * __symbol_table__ (*Symbol_Table*) Object defining variables and constants. * __unknown_symbol_resolver_callback__ (*callable*) See description above. ##### def results(self): If an expression contains a `return []` statement, the returned values are accessed using this method. A python list is returned which may contain real values, strings or vectors. **Note:** the expression should be evaluated by calling `value()` before trying to access results. __Returns:__ * (*list*) List of values produced by expression's `return` statement. ##### def value(self): Evaluate expression using variable values currently set within associated `Symbol_Table` __Returns:__ * (*float*) Value resulting from evaluation of expression. ##### def __call__(self): Equivalent to calling `value()` method. __Returns:__ * (*float*) Value resulting from evaluation of expression. ##### symbol_table Read only property that returns `Symbol_Table` instance associated with this expression. __Returns:__ %package -n python3-cexprtk Summary: Mathematical expression parser: cython wrapper around the 'C++ Mathematical Expression Toolkit Library' Provides: python-cexprtk BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip BuildRequires: python3-cffi BuildRequires: gcc BuildRequires: gdb %description -n python3-cexprtk ## API Reference For information about expressions supported by `cexprtk` please refer to the original C++ [ExprTK][] documentation: ### Class Reference #### class Expression: Class representing mathematical expression. * Following instantiation, the expression is evaluated calling the expression or invoking its `value()` method. * The variable values used by the Expression can be modified through the `variables` property of the `Symbol_Table` instance associated with the expression. The `Symbol_Table` can be accessed using the `Expression.symbol_table` property. ##### Defining unknown symbol-resolver: The `unknown_symbol_resolver_callback` argument to the `Expression` constructor accepts a callable which is invoked whenever a symbol (i.e. a variable or a constant), is not found in the `Symbol_Table` given by the `symbol_table` argument. The `unknown_symbol_resolver_callback` can be used to provide a value for the missing value or to set an error condition. The callable should have following signature: ```python def callback(symbol_name): ``` Where `symbol_name` is a string identifying the missing symbol. The callable should return a tuple of the form: ```python (HANDLED_FLAG, USR_SYMBOL_TYPE, SYMBOL_VALUE, ERROR_STRING) ``` Where: * `HANDLED_FLAG` is a boolean: + `True` indicates that callback was able handle the error condition and that `SYMBOL_VALUE` should be used for the missing symbol. + `False`, flags and error condition, the reason why the unknown symbol could not be resolved by the callback is described by `ERROR_STRING`. * `USR_SYMBOL_TYPE` gives type of symbol (constant or variable) that should be added to the `symbol_table` when unkown symbol is resolved. Value should be one of those given in `cexprtk.USRSymbolType`. e.g. + `cexprtk.USRSymbolType.VARIABLE` + `cexprtk.USRSymbolType.CONSTANT` * `SYMBOL_VALUE`, floating point value that should be used when resolving missing symbol. * `ERROR_STRING` when `HANDLED_FLAG` is `False` this can be used to describe error condition. ##### def __init__(self, *expression*, *symbol_table*, *unknown_symbol_resolver_callback* = None): Instantiate `Expression` from a text string giving formula and `Symbol_Table` instance encapsulating variables and constants used by the expression. __Parameters:__ * __expression__ (*str*) String giving expression to be calculated. * __symbol_table__ (*Symbol_Table*) Object defining variables and constants. * __unknown_symbol_resolver_callback__ (*callable*) See description above. ##### def results(self): If an expression contains a `return []` statement, the returned values are accessed using this method. A python list is returned which may contain real values, strings or vectors. **Note:** the expression should be evaluated by calling `value()` before trying to access results. __Returns:__ * (*list*) List of values produced by expression's `return` statement. ##### def value(self): Evaluate expression using variable values currently set within associated `Symbol_Table` __Returns:__ * (*float*) Value resulting from evaluation of expression. ##### def __call__(self): Equivalent to calling `value()` method. __Returns:__ * (*float*) Value resulting from evaluation of expression. ##### symbol_table Read only property that returns `Symbol_Table` instance associated with this expression. __Returns:__ %package help Summary: Development documents and examples for cexprtk Provides: python3-cexprtk-doc %description help ## API Reference For information about expressions supported by `cexprtk` please refer to the original C++ [ExprTK][] documentation: ### Class Reference #### class Expression: Class representing mathematical expression. * Following instantiation, the expression is evaluated calling the expression or invoking its `value()` method. * The variable values used by the Expression can be modified through the `variables` property of the `Symbol_Table` instance associated with the expression. The `Symbol_Table` can be accessed using the `Expression.symbol_table` property. ##### Defining unknown symbol-resolver: The `unknown_symbol_resolver_callback` argument to the `Expression` constructor accepts a callable which is invoked whenever a symbol (i.e. a variable or a constant), is not found in the `Symbol_Table` given by the `symbol_table` argument. The `unknown_symbol_resolver_callback` can be used to provide a value for the missing value or to set an error condition. The callable should have following signature: ```python def callback(symbol_name): ``` Where `symbol_name` is a string identifying the missing symbol. The callable should return a tuple of the form: ```python (HANDLED_FLAG, USR_SYMBOL_TYPE, SYMBOL_VALUE, ERROR_STRING) ``` Where: * `HANDLED_FLAG` is a boolean: + `True` indicates that callback was able handle the error condition and that `SYMBOL_VALUE` should be used for the missing symbol. + `False`, flags and error condition, the reason why the unknown symbol could not be resolved by the callback is described by `ERROR_STRING`. * `USR_SYMBOL_TYPE` gives type of symbol (constant or variable) that should be added to the `symbol_table` when unkown symbol is resolved. Value should be one of those given in `cexprtk.USRSymbolType`. e.g. + `cexprtk.USRSymbolType.VARIABLE` + `cexprtk.USRSymbolType.CONSTANT` * `SYMBOL_VALUE`, floating point value that should be used when resolving missing symbol. * `ERROR_STRING` when `HANDLED_FLAG` is `False` this can be used to describe error condition. ##### def __init__(self, *expression*, *symbol_table*, *unknown_symbol_resolver_callback* = None): Instantiate `Expression` from a text string giving formula and `Symbol_Table` instance encapsulating variables and constants used by the expression. __Parameters:__ * __expression__ (*str*) String giving expression to be calculated. * __symbol_table__ (*Symbol_Table*) Object defining variables and constants. * __unknown_symbol_resolver_callback__ (*callable*) See description above. ##### def results(self): If an expression contains a `return []` statement, the returned values are accessed using this method. A python list is returned which may contain real values, strings or vectors. **Note:** the expression should be evaluated by calling `value()` before trying to access results. __Returns:__ * (*list*) List of values produced by expression's `return` statement. ##### def value(self): Evaluate expression using variable values currently set within associated `Symbol_Table` __Returns:__ * (*float*) Value resulting from evaluation of expression. ##### def __call__(self): Equivalent to calling `value()` method. __Returns:__ * (*float*) Value resulting from evaluation of expression. ##### symbol_table Read only property that returns `Symbol_Table` instance associated with this expression. __Returns:__ %prep %autosetup -n cexprtk-0.4.1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-cexprtk -f filelist.lst %dir %{python3_sitearch}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri May 05 2023 Python_Bot - 0.4.1-1 - Package Spec generated