Changeset e0208dc in git
- Timestamp:
- Jan 26, 2021, 11:35:36 AM (2 years ago)
- Branches:
- (u'spielwiese', '0d6b7fcd9813a1ca1ed4220cfa2b104b97a0a003')
- Children:
- 45adda4d5309df54c9f7e6205887c42e91d19d22
- Parents:
- 010a14be02b07fa1ee9a250d9e2251114f166424
- git-author:
- Hans Schoenemann <hannes@mathematik.uni-kl.de>2021-01-26 11:35:36+01:00
- git-committer:
- Hans Schoenemann <hannes@mathematik.uni-kl.de>2021-01-26 11:36:59+01:00
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/FLINTconvert.cc
r010a14 re0208dc 113 113 #include "FLINTconvert.h" 114 114 115 // TODO!! decide if the input to convertCF2Fmpz is expected to be: 116 // initialized, or 117 // uninitialized 115 // assumes result to be uninitialiazed 118 116 void convertCF2Fmpz (fmpz_t result, const CanonicalForm& f) 119 117 { 120 118 if (f.isImm()) 121 *result=f.intval(); // assumes uninitialized 122 //fmpz_set_si (result, f.intval()); 119 *result=f.intval(); 123 120 else 124 121 { 125 122 mpz_t gmp_val; 126 123 f.mpzval(gmp_val); 127 fmpz_set_mpz (result, gmp_val); // assumes initialized 124 fmpz_init(result); 125 fmpz_set_mpz (result, gmp_val); 126 mpz_clear (gmp_val); 127 } 128 } 129 130 // special version assuming result is already initialized 131 void convertCF2initFmpz (fmpz_t result, const CanonicalForm& f) 132 { 133 if (f.isImm()) 134 fmpz_set_si (result, f.intval()); 135 else 136 { 137 mpz_t gmp_val; 138 f.mpzval(gmp_val); 139 140 mpz_swap(gmp_val, _fmpz_promote(result)); 141 _fmpz_demote_val(result); 142 128 143 mpz_clear (gmp_val); 129 144 } … … 135 150 _fmpz_poly_set_length(result, degree(f)+1); 136 151 for (CFIterator i= f; i.hasTerms(); i++) 137 convertCF2 Fmpz (fmpz_poly_get_coeff_ptr(result, i.exp()), i.coeff()); // assumes initialized152 convertCF2initFmpz (fmpz_poly_get_coeff_ptr(result, i.exp()), i.coeff()); // assumes initialized 138 153 } 139 154 … … 302 317 { 303 318 for (CFIterator i= f; i.hasTerms(); i++) 304 convertCF2 Fmpz (&result[i.exp()], i.coeff()); // assumes ?319 convertCF2initFmpz (&result[i.exp()], i.coeff()); // assumes initialized 305 320 } 306 321 … … 315 330 CanonicalForm den= bCommonDen (f); 316 331 convertFacCF2Fmpz_array (fmpq_poly_numref (result), f*den); 317 convertCF2 Fmpz (fmpq_poly_denref (result), den); // assumes initialized332 convertCF2initFmpz (fmpq_poly_denref (result), den); // assumes initialized 318 333 319 334 if (!isRat) … … 412 427 fmpz_t FLINTp; 413 428 fmpz_init (FLINTp); 414 convertCF2 Fmpz (FLINTp, b.getpk()); // assumes initialized429 convertCF2initFmpz (FLINTp, b.getpk()); // assumes initialized 415 430 fmpz_mod_ctx_t ctx; 416 431 fmpz_mod_ctx_init(ctx,FLINTp);
Note: See TracChangeset
for help on using the changeset viewer.