Changeset 045efb in git for libpolys/coeffs/longrat.cc


Ignore:
Timestamp:
Aug 10, 2011, 7:43:14 PM (13 years ago)
Author:
Oleksandr Motsak <motsak@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
5ff1d31f3d80f972b5abf4d4435d01cb9b033ffb
Parents:
b1ca9992c1a4e67c4f6161015c9bb3efd24c96f4
git-author:
Oleksandr Motsak <motsak@mathematik.uni-kl.de>2011-08-10 19:43:14+02:00
git-committer:
Mohamed Barakat <mohamed.barakat@rwth-aachen.de>2011-11-09 13:19:14+01:00
Message:
ADD: conversion between numbers and mpz_t (GMP integers)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libpolys/coeffs/longrat.cc

    rb1ca999 r045efb  
    542542}
    543543
     544void nlMPZ(mpz_t m, number &n, const coeffs r)
     545{
     546  assume( getCoeffType(r) == ID );
     547   
     548  nlTest(n, r);
     549  nlNormalize(n, r);
     550  if (SR_HDL(n) & SR_INT) mpz_init_set_si(m, SR_TO_INT(n));     /* n fits in an int */
     551  else             mpz_init_set(m, (mpz_ptr)n->z);
     552}
     553
     554
    544555/*2
    545556* convert number to int
     
    20912102}
    20922103
    2093 
    20942104LINLINE number nlInit (int i, const coeffs r)
    20952105{
     
    21022112}
    21032113
     2114
     2115number nlInitMPZ(mpz_t m, const coeffs r)
     2116{
     2117  number z = ALLOC_RNUMBER();
     2118  mpz_init_set(z->z, m);
     2119  mpz_init_set_ui(z->n, 1);
     2120  z->s = 3;
     2121  return z;   
     2122}
    21042123
    21052124/*2
     
    25962615  r->cfExactDiv= nlExactDiv;
    25972616  r->cfInit = nlInit;
     2617  r->cfInitMPZ = nlInitMPZ;
    25982618  r->cfSize  = nlSize;
    25992619  r->cfInt  = nlInt;
     2620  r->cfMPZ = nlMPZ;
     2621 
    26002622  r->cfChineseRemainder=nlChineseRemainder;
    26012623  r->cfFarey=nlFarey;
Note: See TracChangeset for help on using the changeset viewer.