![]() |
Cadabra
Computer algebra system for field theory problems
|
#include "Functional.hh"Namespaces | |
| namespace | cadabra |
| Functions to handle the exchange properties of two or more symbols in a product. | |
Functions | |
| void | cadabra::do_list (const Ex &tr, Ex::iterator it, std::function< bool(Ex::iterator)> f) |
| Apply a function to every element of a list, or if the iterator 'it' does not point to a list, only on that single element. | |
| void | cadabra::do_sum (const Ex &sum, Ex::iterator it, std::function< bool(Ex::iterator)> f) |
| Apply a function to every term in a sum, or if the iterator does not point to a sum, only on that single term. | |
| int | cadabra::list_size (const Ex &tr, Ex::iterator it) |
| For lists as defined above for 'do_list', return their size (in case you really need to know the size before iterating over the elements). | |
| Ex::iterator | cadabra::find_in_subtree (const Ex &tr, Ex::iterator it, std::function< bool(Ex::iterator)> f, bool including_head=true) |
| Returns an iterator to the first element for which 'f' returns 'true', or 'tr.end()'. | |
| Ex::iterator | cadabra::find_in_list (const Ex &tr, Ex::iterator it, std::function< Ex::iterator(Ex::iterator)> f) |
| Returns an iterator to the first element for which 'f' does not return tr.end(). | |
| Ex | cadabra::make_list (Ex el) |
| Ensure that the tree is a list, even if it contains only a single element. | |