323{
324 try
325 {
328 if (K == nullptr)
329 {
330 ERROR(
"expected a tower ring");
331 return nullptr;
332 }
334
338 std::unique_ptr<M2::ARingTower>(
T));
340 {
342 return nullptr;
343 }
344}
static ARingTower * create(const BaseRingType &baseRing, const std::vector< std::string > &names)
aring-style coefficient ring for tower polynomial rings (Z/p)[x_0][x_1]...[x_{n-1}...
const RingType & ring() const
static ConcreteRing< RingType > * create(std::unique_ptr< RingType > R)
void M2_ArrayString_to_stdvector(M2_ArrayString strs, std::vector< std::string > &result)