diff options
author | tege <tege@gmplib.org> | 2003-03-17 01:35:02 +0100 |
---|---|---|
committer | tege <tege@gmplib.org> | 2003-03-17 01:35:02 +0100 |
commit | 0b34eef35373592e2a8f0753b1719f871822faaa (patch) | |
tree | 66d7ab6005c83d5605483233bdd2a7a6b596381f /mp_dv_tab.c | |
parent | cb860e94c689e34e0eccd0201858026c450a3540 (diff) | |
download | gmp-0b34eef35373592e2a8f0753b1719f871822faaa.tar.gz |
New file, defining __gmp_digit_value_tab.
Diffstat (limited to 'mp_dv_tab.c')
-rw-r--r-- | mp_dv_tab.c | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/mp_dv_tab.c b/mp_dv_tab.c new file mode 100644 index 000000000..c6c872830 --- /dev/null +++ b/mp_dv_tab.c @@ -0,0 +1,69 @@ +/* __gmp_digit_value_tab -- support for mp*_set_str + + THE CONTENTS OF THIS FILE ARE FOR INTERNAL USE AND MAY CHANGE + INCOMPATIBLY OR DISAPPEAR IN A FUTURE GNU MP RELEASE. + +Copyright 2003 Free Software Foundation, Inc. + +This file is part of the GNU MP Library. + +The GNU MP Library is free software; you can redistribute it and/or modify +it under the terms of the GNU Lesser General Public License as published by +the Free Software Foundation; either version 2.1 of the License, or (at your +option) any later version. + +The GNU MP Library is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public +License for more details. + +You should have received a copy of the GNU Lesser General Public License +along with the GNU MP Library; see the file COPYING.LIB. If not, write to +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ + +#include "gmp.h" +#include "gmp-impl.h" + +/* Table to be indexed by character, to get its numerical value. Assumes ASCII + character set. + + First part of table supports common usages, where 'A' and 'a' have the same + value; this supports bases 2..36 + + At offset 224, values for bases 37..62 start. Here, 'A' has the value 10 + (in decimal) and 'a' has the value 36. */ + +#define X 0xff +const unsigned char __gmp_digit_value_tab[] = +{ + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, X, X, X, X, X, X, + X,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24, + 25,26,27,28,29,30,31,32,33,34,35,X, X, X, X, X, + X,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24, + 25,26,27,28,29,30,31,32,33,34,35,X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, X, X, X, X, X, X, + X,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24, + 25,26,27,28,29,30,31,32,33,34,35,X, X, X, X, X, + X,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50, + 51,52,53,54,55,56,57,58,59,60,61,X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, + X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X +}; |