use pyo3::exceptions::PyValueError;
use pyo3::prelude::*;
use pyo3::types::PyAnyMethods;
#[pyfunction]
fn symbol(_name: String) -> PyResult<Py<PyAny>> {
Err(PyValueError::new_err(
"Symbolic computation not yet available in Python bindings - see NumRS2 Rust API",
))
}
#[pyfunction]
fn diff(_expr: Py<PyAny>, _var: Py<PyAny>) -> PyResult<Py<PyAny>> {
Err(PyValueError::new_err(
"Symbolic differentiation not yet available in Python bindings - see NumRS2 Rust API",
))
}
#[pyfunction]
fn simplify(_expr: Py<PyAny>) -> PyResult<Py<PyAny>> {
Err(PyValueError::new_err(
"Symbolic simplification not yet available in Python bindings - see NumRS2 Rust API",
))
}
pub fn register(m: &Bound<'_, PyModule>) -> PyResult<()> {
let symbolic_module = PyModule::new(m.py(), "symbolic")?;
symbolic_module.add_function(wrap_pyfunction!(symbol, m)?)?;
symbolic_module.add_function(wrap_pyfunction!(diff, m)?)?;
symbolic_module.add_function(wrap_pyfunction!(simplify, m)?)?;
m.add_submodule(&symbolic_module)?;
Ok(())
}