OASIS
Open Algebra Software
|
#include <algorithm>
#include <cassert>
#include <functional>
#include <list>
#include "Expression.hpp"
#include "RecursiveCast.hpp"
#include "Serialization.hpp"
Go to the source code of this file.
Classes | |
class | Oasis::BinaryExpression< DerivedT, MostSigOpT, LeastSigOpT > |
A binary expression. More... | |
Namespaces | |
namespace | Oasis |
Concepts | |
concept | Oasis::IOperand |
A concept for an operand of a binary expression. | |
concept | Oasis::IAssociativeAndCommutative |
Functions | |
template<template< typename, typename > typename T> requires IAssociativeAndCommutative<T> | |
auto | Oasis::BuildFromVector (const std::vector< std::unique_ptr< Expression > > &ops) -> std::unique_ptr< T< Expression, Expression > > |
Builds a reasonably balanced binary expression from a vector of operands. | |