passagemath-setup 10.4.29__py3-none-any.whl → 10.4.31__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {passagemath_setup-10.4.29.dist-info → passagemath_setup-10.4.31.dist-info}/METADATA +1 -1
- passagemath_setup-10.4.31.dist-info/RECORD +38 -0
- sage_setup/__init__.py +20 -8
- sage_setup/autogen/__init__.py +4 -3
- sage_setup/autogen/interpreters/__main__.py +2 -1
- sage_setup/autogen/interpreters/{__init__.py → internal/__init__.py} +20 -18
- sage_setup/autogen/interpreters/{generator.py → internal/generator.py} +24 -24
- sage_setup/autogen/interpreters/{instructions.py → internal/instructions.py} +21 -21
- sage_setup/autogen/interpreters/{memory.py → internal/memory.py} +24 -24
- sage_setup/autogen/interpreters/{specs → internal/specs}/base.py +9 -9
- sage_setup/autogen/interpreters/{specs → internal/specs}/cc.py +12 -14
- sage_setup/autogen/interpreters/{specs → internal/specs}/cdf.py +2 -3
- sage_setup/autogen/interpreters/{specs → internal/specs}/element.py +6 -8
- sage_setup/autogen/interpreters/{specs → internal/specs}/python.py +20 -20
- sage_setup/autogen/interpreters/{specs → internal/specs}/rdf.py +2 -2
- sage_setup/autogen/interpreters/{specs → internal/specs}/rr.py +12 -14
- sage_setup/autogen/interpreters/{storage.py → internal/storage.py} +42 -42
- sage_setup/autogen/interpreters/{utils.py → internal/utils.py} +4 -4
- sage_setup/find.py +86 -0
- passagemath_setup-10.4.29.dist-info/RECORD +0 -38
- {passagemath_setup-10.4.29.dist-info → passagemath_setup-10.4.31.dist-info}/WHEEL +0 -0
- {passagemath_setup-10.4.29.dist-info → passagemath_setup-10.4.31.dist-info}/top_level.txt +0 -0
- /sage_setup/autogen/interpreters/{specs → internal/specs}/__init__.py +0 -0
@@ -0,0 +1,38 @@
|
|
1
|
+
sage_setup/__init__.py,sha256=pdtV0MZsLNuKUUGVnuf8cFcVVfOY2_eZ6gMBoT9I3Ug,6855
|
2
|
+
sage_setup/cython_options.py,sha256=xqwDB-L_Jr8L5IOwjnkUoEWlGKqR_lG8z9qkuFETlIw,1417
|
3
|
+
sage_setup/excepthook.py,sha256=RMZ-rNsSEL9clgLAnXrMnczR6Dzqw3tNeozBzEd1gKM,1040
|
4
|
+
sage_setup/extensions.py,sha256=Zya8xIx24ayuaHx1w8fbbA7tmry2xhSWfMfFh-I0y2o,500
|
5
|
+
sage_setup/find.py,sha256=o7ua2Cgt09sWMsOKeykYtXrX_1JxPd-pJKfwkGaxTmk,17604
|
6
|
+
sage_setup/library_order.py,sha256=A-6vD3fnsYzCmeWikNIyhx4MkKSpLLuc2GGsUoxpkGY,1783
|
7
|
+
sage_setup/run_parallel.py,sha256=0M1f7x1qkadHmEltscLIUFFgVRwWqYyvpzsMriciJLQ,4516
|
8
|
+
sage_setup/setenv.py,sha256=runuIG6m09duI7cxgPm8tJZAPh5BY_e4rHbzk2stWVc,2182
|
9
|
+
sage_setup/util.py,sha256=Cf6mCt3BrcQ7A45W4XAUdsLbnFN5S4dM9OguWphcF6c,1716
|
10
|
+
sage_setup/autogen/__init__.py,sha256=eGPpcqieRTrl5A6yP0XudxfQHo7MHnG4U2fZZDlsY98,435
|
11
|
+
sage_setup/autogen/__main__.py,sha256=XF8mvERZVwBGq77B0msBBmowXocRPXO42WxU4TP9Zag,42
|
12
|
+
sage_setup/autogen/flint_autogen.py,sha256=Lhz-VEkcoCixviFOZc_ibf-YBPfJihiE3EJ9qfYYA0w,832
|
13
|
+
sage_setup/autogen/giacpy-mkkeywords.py,sha256=VnMmjuOYdNRlIxVGN835DN5irMNFi3rGLUSAbr6BffU,28947
|
14
|
+
sage_setup/autogen/interpreters/__main__.py,sha256=nMSARgo2bTpsi3btfCLw-Gswp4ffnybS96IBDh2Xvug,282
|
15
|
+
sage_setup/autogen/interpreters/internal/__init__.py,sha256=zV0VdhNRmZsfrgoTZrzy69PrlcKkBzRv6Ws_wdgWe3c,10487
|
16
|
+
sage_setup/autogen/interpreters/internal/generator.py,sha256=B-Ypu_O_2NZ79_uSpyajvZR0g7JJ6vVwTdBBsJ9wMQI,40712
|
17
|
+
sage_setup/autogen/interpreters/internal/instructions.py,sha256=7ytg28qn8hrc-V5Tepln-FZQ--4w-geNMRp1DV-T4DA,16742
|
18
|
+
sage_setup/autogen/interpreters/internal/memory.py,sha256=r4VGt5wEn4Kc-iDpGN73ERsiq1VrDtO1Bb5YyySFst4,18868
|
19
|
+
sage_setup/autogen/interpreters/internal/storage.py,sha256=DYNn9KTPcltTRuxb2ovh2ML4TP8jMl3zD-smqaTLEXs,33966
|
20
|
+
sage_setup/autogen/interpreters/internal/utils.py,sha256=oTGO0CGtFEegVAVcUPQ0RdHa9O6JJkUCkLfAl2Z7wFA,5004
|
21
|
+
sage_setup/autogen/interpreters/internal/specs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
22
|
+
sage_setup/autogen/interpreters/internal/specs/base.py,sha256=W5GDejNmXGDE6PmilNZrRFGPKVomiS-m0weXKmAhFjw,6407
|
23
|
+
sage_setup/autogen/interpreters/internal/specs/cc.py,sha256=koo0SDpiztsIRxXK_sXLVJp2kl3McyrxdVht83siFVg,9842
|
24
|
+
sage_setup/autogen/interpreters/internal/specs/cdf.py,sha256=rotNRev6rVe1JQr4ITR_t1H7RMOImsp3nraMOFExRb0,9153
|
25
|
+
sage_setup/autogen/interpreters/internal/specs/element.py,sha256=AeUul7HuGOLXIdx_UXxPPVYuGqnuVvh96QwHHPjeSME,5039
|
26
|
+
sage_setup/autogen/interpreters/internal/specs/python.py,sha256=56XQCDk_alI0n3kpvzNrPeeIUuB8VdImIOL63wVRfYg,11419
|
27
|
+
sage_setup/autogen/interpreters/internal/specs/rdf.py,sha256=7yBppCzalqrVcukyfwtdEcwyPsEiyoOxQPWNCoIiDgA,7228
|
28
|
+
sage_setup/autogen/interpreters/internal/specs/rr.py,sha256=X8e-HzCRnj5W4e4Gzib3BiLOlPrb-Pk1VTeKyj4JGPU,10690
|
29
|
+
sage_setup/command/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
30
|
+
sage_setup/command/sage_build_cython.py,sha256=jzts8hgku4Q9Vza_kbmyle55vXyNmciLUkS9M4wGxW0,11907
|
31
|
+
sage_setup/command/sage_build_ext.py,sha256=gND-AnQhP7c_AIvMIJPS1ZRBBeSZyGuDOzoKY-6HC1Q,8590
|
32
|
+
sage_setup/command/sage_build_ext_minimal.py,sha256=ihOR25hbJ6xtxDjv5FqwZhl2-Eq--P9Qy2V-zCgftp8,1328
|
33
|
+
sage_setup/command/sage_build_py.py,sha256=bzuRHXKnhItGMkjYxZ276jHz030B85lq45Bp6shI9Nw,311
|
34
|
+
sage_setup/command/sage_install.py,sha256=MRArCc0exyqJpVpILvgnM-FNZQ1XJzk-AXIvw5Qxp6U,1340
|
35
|
+
passagemath_setup-10.4.31.dist-info/METADATA,sha256=A36G2dytb7rl7XZDyGHuygy5mpG1VmemTrauIHs7nY8,1288
|
36
|
+
passagemath_setup-10.4.31.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
|
37
|
+
passagemath_setup-10.4.31.dist-info/top_level.txt,sha256=CNueJfE_I7DXDeFCPmCEMgfqRRZuufTzxVW0sPkbamc,11
|
38
|
+
passagemath_setup-10.4.31.dist-info/RECORD,,
|
sage_setup/__init__.py
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
def sage_setup(distributions, *,
|
2
2
|
interpreters=(),
|
3
3
|
required_modules=(), optional_modules=(),
|
4
|
+
spkgs=(),
|
4
5
|
recurse_packages=(),
|
5
6
|
package_data=None):
|
6
7
|
r"""
|
@@ -17,6 +18,8 @@ def sage_setup(distributions, *,
|
|
17
18
|
|
18
19
|
- ``optional_modules`` -- sequence of strings, pkgconfig modules to checked for the build.
|
19
20
|
|
21
|
+
- ``spkgs`` -- sequence of strings, SPKGs required for the build.
|
22
|
+
|
20
23
|
- ``package_data`` -- ``None`` or a dictionary mapping package names to lists of filename
|
21
24
|
glob patterns, the package data to install.
|
22
25
|
|
@@ -68,13 +71,6 @@ def sage_setup(distributions, *,
|
|
68
71
|
from sage_setup.excepthook import excepthook
|
69
72
|
sys.excepthook = excepthook
|
70
73
|
|
71
|
-
from sage_setup.setenv import setenv
|
72
|
-
setenv()
|
73
|
-
|
74
|
-
import sage.env
|
75
|
-
sage.env.default_required_modules = required_modules
|
76
|
-
sage.env.default_optional_modules = optional_modules
|
77
|
-
|
78
74
|
cmdclass = dict(build_ext=sage_build_ext_minimal,
|
79
75
|
build_py=sage_build_py)
|
80
76
|
|
@@ -88,11 +84,27 @@ def sage_setup(distributions, *,
|
|
88
84
|
python_modules = []
|
89
85
|
python_packages = []
|
90
86
|
else:
|
87
|
+
|
88
|
+
if spkgs:
|
89
|
+
try:
|
90
|
+
from sage_conf import make
|
91
|
+
except ImportError:
|
92
|
+
pass
|
93
|
+
else:
|
94
|
+
make(" ".join(f"{spkg}-ensure" for spkg in spkgs))
|
95
|
+
|
96
|
+
from sage_setup.setenv import setenv
|
97
|
+
setenv()
|
98
|
+
|
99
|
+
import sage.env
|
100
|
+
sage.env.default_required_modules = required_modules
|
101
|
+
sage.env.default_optional_modules = optional_modules
|
102
|
+
|
91
103
|
if interpreters:
|
92
104
|
log.info("Generating auto-generated sources")
|
93
105
|
# from sage_setup.autogen import autogen_all
|
94
106
|
# autogen_all()
|
95
|
-
from sage_setup.autogen.interpreters import rebuild
|
107
|
+
from sage_setup.autogen.interpreters.internal import rebuild
|
96
108
|
rebuild(os.path.join("sage", "ext", "interpreters"),
|
97
109
|
interpreters=interpreters,
|
98
110
|
distribution=distributions[0], force=True)
|
sage_setup/autogen/__init__.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import os
|
2
2
|
|
3
|
-
from . import
|
3
|
+
from sage_setup.autogen.interpreters.internal import rebuild
|
4
4
|
|
5
5
|
|
6
6
|
def autogen_all():
|
@@ -11,6 +11,7 @@ def autogen_all():
|
|
11
11
|
of packages built/installed by setup.py.
|
12
12
|
"""
|
13
13
|
from sage.env import SAGE_SRC
|
14
|
-
interpreters.rebuild(os.path.join(SAGE_SRC, "sage", "ext", "interpreters"))
|
15
14
|
|
16
|
-
|
15
|
+
rebuild(os.path.join(SAGE_SRC, "sage", "ext", "interpreters"))
|
16
|
+
|
17
|
+
return ["sage.ext.interpreters"]
|
@@ -1,8 +1,9 @@
|
|
1
|
+
#!/usr/bin/env python3
|
1
2
|
# Usage: python -m sage_setup.autogen.interpreters <output_dir>
|
2
3
|
|
3
4
|
import argparse
|
4
5
|
|
5
|
-
from
|
6
|
+
from internal import rebuild
|
6
7
|
|
7
8
|
parser = argparse.ArgumentParser()
|
8
9
|
parser.add_argument("output_dir", help="Output directory")
|
@@ -109,20 +109,18 @@ compatibility.
|
|
109
109
|
# that will have to be changed.
|
110
110
|
#####################################################################
|
111
111
|
|
112
|
-
from __future__ import
|
112
|
+
from __future__ import absolute_import, print_function
|
113
113
|
|
114
114
|
import os
|
115
|
-
|
116
115
|
from os.path import getmtime
|
117
116
|
|
118
|
-
from .generator import
|
117
|
+
from .generator import AUTOGEN_WARN, InterpreterGenerator
|
119
118
|
from .instructions import *
|
120
119
|
from .memory import *
|
121
120
|
from .specs.base import *
|
122
121
|
from .storage import *
|
123
122
|
from .utils import *
|
124
123
|
|
125
|
-
|
126
124
|
# Tuple of (filename_root, extension, method) where filename_root is the
|
127
125
|
# root of the filename to be joined with "_<interpreter_name>".ext and
|
128
126
|
# method is the name of a get_ method on InterpreterGenerator that returns
|
@@ -141,8 +139,8 @@ def build_interp(interp_spec, dir, distribution=None):
|
|
141
139
|
|
142
140
|
EXAMPLES::
|
143
141
|
|
144
|
-
sage: from sage_setup.autogen.interpreters import *
|
145
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
142
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
143
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
146
144
|
sage: testdir = tmp_dir()
|
147
145
|
sage: rdf_interp = RDFInterpreter()
|
148
146
|
sage: build_interp(rdf_interp, testdir)
|
@@ -189,10 +187,10 @@ def rebuild(dirname, force=False, interpreters=None, distribution=None):
|
|
189
187
|
|
190
188
|
Monolithic build::
|
191
189
|
|
192
|
-
sage: from sage_setup.autogen.interpreters import *
|
190
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
193
191
|
sage: testdir = tmp_dir()
|
194
192
|
sage: rebuild(testdir)
|
195
|
-
|
193
|
+
Generating interpreters for fast_callable in ...
|
196
194
|
-> First build of interpreters
|
197
195
|
sage: with open(testdir + '/wrapper_el.pyx') as f:
|
198
196
|
....: f.readline()
|
@@ -203,7 +201,7 @@ def rebuild(dirname, force=False, interpreters=None, distribution=None):
|
|
203
201
|
sage: testdir = tmp_dir()
|
204
202
|
sage: rebuild(testdir, interpreters=['Element', 'Python'],
|
205
203
|
....: distribution='sagemath-categories')
|
206
|
-
|
204
|
+
Generating interpreters for fast_callable in ...
|
207
205
|
-> First build of interpreters
|
208
206
|
sage: with open(testdir + '/all__sagemath_categories.py') as f:
|
209
207
|
....: f.readline()
|
@@ -211,16 +209,22 @@ def rebuild(dirname, force=False, interpreters=None, distribution=None):
|
|
211
209
|
"""
|
212
210
|
# This line will show up in "sage -b" (once per upgrade, not every time
|
213
211
|
# you run it).
|
214
|
-
print("
|
212
|
+
print(f"Generating interpreters for fast_callable in {dirname}")
|
215
213
|
|
216
214
|
if interpreters is None:
|
217
215
|
interpreters = ['CDF', 'Element', 'Python', 'RDF', 'RR', 'CC']
|
218
216
|
|
219
217
|
from importlib import import_module
|
220
218
|
|
221
|
-
_INTERPRETERS = [
|
222
|
-
|
223
|
-
|
219
|
+
_INTERPRETERS = [
|
220
|
+
getattr(
|
221
|
+
import_module(
|
222
|
+
".specs." + interpreter.lower(), package=__name__
|
223
|
+
),
|
224
|
+
interpreter + "Interpreter",
|
225
|
+
)
|
226
|
+
for interpreter in interpreters
|
227
|
+
]
|
224
228
|
|
225
229
|
if distribution is None:
|
226
230
|
all_py = 'all.py'
|
@@ -232,11 +236,6 @@ def rebuild(dirname, force=False, interpreters=None, distribution=None):
|
|
232
236
|
except OSError:
|
233
237
|
if not os.path.isdir(dirname):
|
234
238
|
raise
|
235
|
-
# Remove leftover file from before move to namespace packages
|
236
|
-
try:
|
237
|
-
os.remove(os.path.join(dirname, '__init__.py'))
|
238
|
-
except FileNotFoundError:
|
239
|
-
pass
|
240
239
|
|
241
240
|
# Although multiple files are generated by this function, since
|
242
241
|
# they are all generated at once it suffices to make sure if just
|
@@ -272,3 +271,6 @@ def rebuild(dirname, force=False, interpreters=None, distribution=None):
|
|
272
271
|
if distribution is not None:
|
273
272
|
f.write(f"# sage_setup: distribution = {distribution}\n")
|
274
273
|
f.write("# " + AUTOGEN_WARN)
|
274
|
+
|
275
|
+
with open(os.path.join(dirname, '__init__.py'), 'w') as f:
|
276
|
+
f.write("# " + AUTOGEN_WARN)
|
@@ -42,8 +42,8 @@ class InterpreterGenerator(object):
|
|
42
42
|
|
43
43
|
EXAMPLES::
|
44
44
|
|
45
|
-
sage: from sage_setup.autogen.interpreters import *
|
46
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
45
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
46
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
47
47
|
sage: interp = RDFInterpreter()
|
48
48
|
sage: gen = InterpreterGenerator(interp)
|
49
49
|
sage: gen._spec is interp
|
@@ -72,8 +72,8 @@ class InterpreterGenerator(object):
|
|
72
72
|
|
73
73
|
EXAMPLES::
|
74
74
|
|
75
|
-
sage: from sage_setup.autogen.interpreters import *
|
76
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
75
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
76
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
77
77
|
sage: interp = RDFInterpreter()
|
78
78
|
sage: gen = InterpreterGenerator(interp)
|
79
79
|
sage: from io import StringIO
|
@@ -219,8 +219,8 @@ class InterpreterGenerator(object):
|
|
219
219
|
|
220
220
|
EXAMPLES::
|
221
221
|
|
222
|
-
sage: from sage_setup.autogen.interpreters import *
|
223
|
-
sage: from sage_setup.autogen.interpreters.specs.element import ElementInterpreter
|
222
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
223
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.element import ElementInterpreter
|
224
224
|
sage: interp = ElementInterpreter()
|
225
225
|
sage: gen = InterpreterGenerator(interp)
|
226
226
|
sage: print(gen.func_header())
|
@@ -262,8 +262,8 @@ class InterpreterGenerator(object):
|
|
262
262
|
|
263
263
|
EXAMPLES::
|
264
264
|
|
265
|
-
sage: from sage_setup.autogen.interpreters import *
|
266
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
265
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
266
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
267
267
|
sage: interp = RDFInterpreter()
|
268
268
|
sage: gen = InterpreterGenerator(interp)
|
269
269
|
sage: from io import StringIO
|
@@ -310,8 +310,8 @@ class InterpreterGenerator(object):
|
|
310
310
|
|
311
311
|
EXAMPLES::
|
312
312
|
|
313
|
-
sage: from sage_setup.autogen.interpreters import *
|
314
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
313
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
314
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
315
315
|
sage: interp = RDFInterpreter()
|
316
316
|
sage: gen = InterpreterGenerator(interp)
|
317
317
|
sage: from io import StringIO
|
@@ -480,8 +480,8 @@ class InterpreterGenerator(object):
|
|
480
480
|
|
481
481
|
EXAMPLES::
|
482
482
|
|
483
|
-
sage: from sage_setup.autogen.interpreters import *
|
484
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
483
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
484
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
485
485
|
sage: interp = RDFInterpreter()
|
486
486
|
sage: gen = InterpreterGenerator(interp)
|
487
487
|
sage: from io import StringIO
|
@@ -532,10 +532,10 @@ class InterpreterGenerator(object):
|
|
532
532
|
|
533
533
|
First we get the InterpreterSpec for several interpreters::
|
534
534
|
|
535
|
-
sage: from sage_setup.autogen.interpreters import *
|
536
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
537
|
-
sage: from sage_setup.autogen.interpreters.specs.rr import RRInterpreter
|
538
|
-
sage: from sage_setup.autogen.interpreters.specs.element import ElementInterpreter
|
535
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
536
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
537
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rr import RRInterpreter
|
538
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.element import ElementInterpreter
|
539
539
|
sage: rdf_spec = RDFInterpreter()
|
540
540
|
sage: rr_spec = RRInterpreter()
|
541
541
|
sage: el_spec = ElementInterpreter()
|
@@ -657,10 +657,10 @@ class InterpreterGenerator(object):
|
|
657
657
|
|
658
658
|
First we get the InterpreterSpec for several interpreters::
|
659
659
|
|
660
|
-
sage: from sage_setup.autogen.interpreters import *
|
661
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
662
|
-
sage: from sage_setup.autogen.interpreters.specs.rr import RRInterpreter
|
663
|
-
sage: from sage_setup.autogen.interpreters.specs.element import ElementInterpreter
|
660
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
661
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
662
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rr import RRInterpreter
|
663
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.element import ElementInterpreter
|
664
664
|
sage: rdf_spec = RDFInterpreter()
|
665
665
|
sage: rr_spec = RRInterpreter()
|
666
666
|
sage: el_spec = ElementInterpreter()
|
@@ -983,10 +983,10 @@ class InterpreterGenerator(object):
|
|
983
983
|
|
984
984
|
First we get the InterpreterSpec for several interpreters::
|
985
985
|
|
986
|
-
sage: from sage_setup.autogen.interpreters import *
|
987
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
988
|
-
sage: from sage_setup.autogen.interpreters.specs.rr import RRInterpreter
|
989
|
-
sage: from sage_setup.autogen.interpreters.specs.element import ElementInterpreter
|
986
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
987
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
988
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rr import RRInterpreter
|
989
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.element import ElementInterpreter
|
990
990
|
sage: rdf_spec = RDFInterpreter()
|
991
991
|
sage: rr_spec = RRInterpreter()
|
992
992
|
sage: el_spec = ElementInterpreter()
|
@@ -56,7 +56,7 @@ def params_gen(**chunks):
|
|
56
56
|
|
57
57
|
EXAMPLES::
|
58
58
|
|
59
|
-
sage: from sage_setup.autogen.interpreters import *
|
59
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
60
60
|
sage: mc_stack = MemoryChunkScratch('stack', ty_double, is_stack=True)
|
61
61
|
sage: mc_args = MemoryChunkArguments('args', ty_double)
|
62
62
|
sage: mc_code = MemoryChunkConstants('code', ty_int)
|
@@ -186,8 +186,8 @@ class InstrSpec(object):
|
|
186
186
|
|
187
187
|
EXAMPLES::
|
188
188
|
|
189
|
-
sage: from sage_setup.autogen.interpreters import *
|
190
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
189
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
190
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
191
191
|
sage: pg = RDFInterpreter().pg
|
192
192
|
sage: InstrSpec('add', pg('SS','S'), code='o0 = i0+i1;')
|
193
193
|
add: SS->S = 'o0 = i0+i1;'
|
@@ -213,8 +213,8 @@ class InstrSpec(object):
|
|
213
213
|
|
214
214
|
EXAMPLES::
|
215
215
|
|
216
|
-
sage: from sage_setup.autogen.interpreters import *
|
217
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
216
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
217
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
218
218
|
sage: pg = RDFInterpreter().pg
|
219
219
|
sage: InstrSpec('add', pg('SS','S'), code='o0 = i0+i1;')
|
220
220
|
add: SS->S = 'o0 = i0+i1;'
|
@@ -288,8 +288,8 @@ class InstrSpec(object):
|
|
288
288
|
|
289
289
|
EXAMPLES::
|
290
290
|
|
291
|
-
sage: from sage_setup.autogen.interpreters import *
|
292
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
291
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
292
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
293
293
|
sage: pg = RDFInterpreter().pg
|
294
294
|
sage: InstrSpec('add', pg('SS','S'), code='o0 = i0+i1;')
|
295
295
|
add: SS->S = 'o0 = i0+i1;'
|
@@ -311,8 +311,8 @@ def instr_infix(name, io, op):
|
|
311
311
|
|
312
312
|
EXAMPLES::
|
313
313
|
|
314
|
-
sage: from sage_setup.autogen.interpreters import *
|
315
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
314
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
315
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
316
316
|
sage: pg = RDFInterpreter().pg
|
317
317
|
sage: instr_infix('mul', pg('SS', 'S'), '*')
|
318
318
|
mul: SS->S = 'o0 = i0 * i1;'
|
@@ -327,8 +327,8 @@ def instr_funcall_2args(name, io, op):
|
|
327
327
|
|
328
328
|
EXAMPLES::
|
329
329
|
|
330
|
-
sage: from sage_setup.autogen.interpreters import *
|
331
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
330
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
331
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
332
332
|
sage: pg = RDFInterpreter().pg
|
333
333
|
sage: instr_funcall_2args('atan2', pg('SS', 'S'), 'atan2')
|
334
334
|
atan2: SS->S = 'o0 = atan2(i0, i1);'
|
@@ -343,8 +343,8 @@ def instr_unary(name, io, op):
|
|
343
343
|
|
344
344
|
EXAMPLES::
|
345
345
|
|
346
|
-
sage: from sage_setup.autogen.interpreters import *
|
347
|
-
sage: from sage_setup.autogen.interpreters.specs.rdf import RDFInterpreter
|
346
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
347
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rdf import RDFInterpreter
|
348
348
|
sage: pg = RDFInterpreter().pg
|
349
349
|
sage: instr_unary('sin', pg('S','S'), 'sin(i0)')
|
350
350
|
sin: S->S = 'o0 = sin(i0);'
|
@@ -361,8 +361,8 @@ def instr_funcall_2args_mpfr(name, io, op):
|
|
361
361
|
|
362
362
|
EXAMPLES::
|
363
363
|
|
364
|
-
sage: from sage_setup.autogen.interpreters import *
|
365
|
-
sage: from sage_setup.autogen.interpreters.specs.rr import RRInterpreter
|
364
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
365
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rr import RRInterpreter
|
366
366
|
sage: pg = RRInterpreter().pg
|
367
367
|
sage: instr_funcall_2args_mpfr('add', pg('SS','S'), 'mpfr_add')
|
368
368
|
add: SS->S = 'mpfr_add(o0, i0, i1, MPFR_RNDN);'
|
@@ -377,8 +377,8 @@ def instr_funcall_1arg_mpfr(name, io, op):
|
|
377
377
|
|
378
378
|
EXAMPLES::
|
379
379
|
|
380
|
-
sage: from sage_setup.autogen.interpreters import *
|
381
|
-
sage: from sage_setup.autogen.interpreters.specs.rr import RRInterpreter
|
380
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
381
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rr import RRInterpreter
|
382
382
|
sage: pg = RRInterpreter().pg
|
383
383
|
sage: instr_funcall_1arg_mpfr('exp', pg('S','S'), 'mpfr_exp')
|
384
384
|
exp: S->S = 'mpfr_exp(o0, i0, MPFR_RNDN);'
|
@@ -392,8 +392,8 @@ def instr_funcall_2args_mpc(name, io, op):
|
|
392
392
|
|
393
393
|
EXAMPLES::
|
394
394
|
|
395
|
-
sage: from sage_setup.autogen.interpreters import *
|
396
|
-
sage: from sage_setup.autogen.interpreters.specs.cc import CCInterpreter
|
395
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
396
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.cc import CCInterpreter
|
397
397
|
sage: pg = CCInterpreter().pg
|
398
398
|
sage: instr_funcall_2args_mpc('add', pg('SS','S'), 'mpc_add')
|
399
399
|
add: SS->S = 'mpc_add(o0, i0, i1, MPC_RNDNN);'
|
@@ -407,8 +407,8 @@ def instr_funcall_1arg_mpc(name, io, op):
|
|
407
407
|
|
408
408
|
EXAMPLES::
|
409
409
|
|
410
|
-
sage: from sage_setup.autogen.interpreters import *
|
411
|
-
sage: from sage_setup.autogen.interpreters.specs.cc import CCInterpreter
|
410
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
411
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.cc import CCInterpreter
|
412
412
|
sage: pg = CCInterpreter().pg
|
413
413
|
sage: instr_funcall_1arg_mpc('exp', pg('S','S'), 'mpc_exp')
|
414
414
|
exp: S->S = 'mpc_exp(o0, i0, MPC_RNDNN);'
|
@@ -27,7 +27,7 @@ def string_of_addr(a):
|
|
27
27
|
|
28
28
|
EXAMPLES::
|
29
29
|
|
30
|
-
sage: from sage_setup.autogen.interpreters import *
|
30
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
31
31
|
sage: mc_code = MemoryChunkConstants('code', ty_int)
|
32
32
|
sage: string_of_addr(mc_code)
|
33
33
|
'*code++'
|
@@ -72,7 +72,7 @@ class MemoryChunk(object):
|
|
72
72
|
|
73
73
|
EXAMPLES::
|
74
74
|
|
75
|
-
sage: from sage_setup.autogen.interpreters import *
|
75
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
76
76
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
77
77
|
sage: mc.name
|
78
78
|
'args'
|
@@ -88,7 +88,7 @@ class MemoryChunk(object):
|
|
88
88
|
|
89
89
|
EXAMPLES::
|
90
90
|
|
91
|
-
sage: from sage_setup.autogen.interpreters import *
|
91
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
92
92
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
93
93
|
sage: mc
|
94
94
|
{MC:args}
|
@@ -104,7 +104,7 @@ class MemoryChunk(object):
|
|
104
104
|
|
105
105
|
EXAMPLES::
|
106
106
|
|
107
|
-
sage: from sage_setup.autogen.interpreters import *
|
107
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
108
108
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
109
109
|
sage: mc.declare_class_members()
|
110
110
|
' cdef int _n_args\n cdef mpfr_t* _args\n'
|
@@ -119,7 +119,7 @@ class MemoryChunk(object):
|
|
119
119
|
|
120
120
|
EXAMPLES::
|
121
121
|
|
122
|
-
sage: from sage_setup.autogen.interpreters import *
|
122
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
123
123
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
124
124
|
sage: print(mc.init_class_members())
|
125
125
|
count = args['args']
|
@@ -139,7 +139,7 @@ class MemoryChunk(object):
|
|
139
139
|
|
140
140
|
EXAMPLES::
|
141
141
|
|
142
|
-
sage: from sage_setup.autogen.interpreters import *
|
142
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
143
143
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
144
144
|
sage: print(mc.dealloc_class_members())
|
145
145
|
if self._args:
|
@@ -157,7 +157,7 @@ class MemoryChunk(object):
|
|
157
157
|
|
158
158
|
EXAMPLES::
|
159
159
|
|
160
|
-
sage: from sage_setup.autogen.interpreters import *
|
160
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
161
161
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
162
162
|
sage: mc.declare_parameter()
|
163
163
|
'mpfr_t* args'
|
@@ -171,8 +171,8 @@ class MemoryChunk(object):
|
|
171
171
|
|
172
172
|
EXAMPLES::
|
173
173
|
|
174
|
-
sage: from sage_setup.autogen.interpreters import *
|
175
|
-
sage: from sage_setup.autogen.interpreters.specs.rr import *
|
174
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
175
|
+
sage: from sage_setup.autogen.interpreters.internal.specs.rr import *
|
176
176
|
sage: mc = MemoryChunkRRRetval('retval', ty_mpfr)
|
177
177
|
sage: mc.declare_call_locals()
|
178
178
|
' cdef RealNumber retval = (self.domain)()\n'
|
@@ -186,7 +186,7 @@ class MemoryChunk(object):
|
|
186
186
|
|
187
187
|
EXAMPLES::
|
188
188
|
|
189
|
-
sage: from sage_setup.autogen.interpreters import *
|
189
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
190
190
|
sage: mc = MemoryChunkConstants('constants', ty_mpfr)
|
191
191
|
sage: mc.pass_argument()
|
192
192
|
'self._constants'
|
@@ -201,7 +201,7 @@ class MemoryChunk(object):
|
|
201
201
|
|
202
202
|
EXAMPLES::
|
203
203
|
|
204
|
-
sage: from sage_setup.autogen.interpreters import *
|
204
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
205
205
|
sage: mc = MemoryChunkConstants('constants', ty_mpfr)
|
206
206
|
sage: mc.pass_call_c_argument()
|
207
207
|
'self._constants'
|
@@ -221,7 +221,7 @@ class MemoryChunk(object):
|
|
221
221
|
|
222
222
|
EXAMPLES::
|
223
223
|
|
224
|
-
sage: from sage_setup.autogen.interpreters import *
|
224
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
225
225
|
sage: mc = MemoryChunkConstants('constants', ty_mpfr)
|
226
226
|
sage: mc.needs_cleanup_on_error()
|
227
227
|
False
|
@@ -246,7 +246,7 @@ class MemoryChunk(object):
|
|
246
246
|
|
247
247
|
EXAMPLES::
|
248
248
|
|
249
|
-
sage: from sage_setup.autogen.interpreters import *
|
249
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
250
250
|
sage: mc = MemoryChunkScratch('scratch', ty_mpfr)
|
251
251
|
sage: mc.is_stack()
|
252
252
|
False
|
@@ -268,7 +268,7 @@ class MemoryChunk(object):
|
|
268
268
|
|
269
269
|
EXAMPLES::
|
270
270
|
|
271
|
-
sage: from sage_setup.autogen.interpreters import *
|
271
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
272
272
|
sage: mc = MemoryChunkScratch('args', ty_python)
|
273
273
|
sage: mc.is_python_refcounted_stack()
|
274
274
|
False
|
@@ -297,7 +297,7 @@ class MemoryChunkLonglivedArray(MemoryChunk):
|
|
297
297
|
|
298
298
|
EXAMPLES::
|
299
299
|
|
300
|
-
sage: from sage_setup.autogen.interpreters import *
|
300
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
301
301
|
sage: mc = MemoryChunkArguments('args', ty_double)
|
302
302
|
sage: print(mc.init_class_members())
|
303
303
|
count = args['args']
|
@@ -318,7 +318,7 @@ class MemoryChunkLonglivedArray(MemoryChunk):
|
|
318
318
|
|
319
319
|
EXAMPLES::
|
320
320
|
|
321
|
-
sage: from sage_setup.autogen.interpreters import *
|
321
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
322
322
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
323
323
|
sage: print(mc.dealloc_class_members())
|
324
324
|
if self._args:
|
@@ -336,7 +336,7 @@ class MemoryChunkLonglivedArray(MemoryChunk):
|
|
336
336
|
|
337
337
|
EXAMPLES::
|
338
338
|
|
339
|
-
sage: from sage_setup.autogen.interpreters import *
|
339
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
340
340
|
sage: mc = MemoryChunkConstants('constants', ty_mpfr)
|
341
341
|
sage: mc.pass_argument()
|
342
342
|
'self._constants'
|
@@ -360,7 +360,7 @@ class MemoryChunkConstants(MemoryChunkLonglivedArray):
|
|
360
360
|
|
361
361
|
EXAMPLES::
|
362
362
|
|
363
|
-
sage: from sage_setup.autogen.interpreters import *
|
363
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
364
364
|
sage: mc = MemoryChunkConstants('constants', ty_mpfr)
|
365
365
|
sage: print(mc.init_class_members())
|
366
366
|
val = args['constants']
|
@@ -398,7 +398,7 @@ class MemoryChunkArguments(MemoryChunkLonglivedArray):
|
|
398
398
|
|
399
399
|
EXAMPLES::
|
400
400
|
|
401
|
-
sage: from sage_setup.autogen.interpreters import *
|
401
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
402
402
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
403
403
|
sage: print(mc.setup_args())
|
404
404
|
cdef mpfr_t* c_args = self._args
|
@@ -422,7 +422,7 @@ class MemoryChunkArguments(MemoryChunkLonglivedArray):
|
|
422
422
|
|
423
423
|
EXAMPLES::
|
424
424
|
|
425
|
-
sage: from sage_setup.autogen.interpreters import *
|
425
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
426
426
|
sage: mc = MemoryChunkArguments('args', ty_mpfr)
|
427
427
|
sage: mc.pass_argument()
|
428
428
|
'c_args'
|
@@ -449,7 +449,7 @@ class MemoryChunkScratch(MemoryChunkLonglivedArray):
|
|
449
449
|
|
450
450
|
EXAMPLES::
|
451
451
|
|
452
|
-
sage: from sage_setup.autogen.interpreters import *
|
452
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
453
453
|
sage: mc = MemoryChunkScratch('stack', ty_double, is_stack=True)
|
454
454
|
sage: mc.name
|
455
455
|
'stack'
|
@@ -469,7 +469,7 @@ class MemoryChunkScratch(MemoryChunkLonglivedArray):
|
|
469
469
|
|
470
470
|
EXAMPLES::
|
471
471
|
|
472
|
-
sage: from sage_setup.autogen.interpreters import *
|
472
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
473
473
|
sage: mc = MemoryChunkScratch('stack', ty_mpfr, is_stack=True)
|
474
474
|
sage: mc.is_stack()
|
475
475
|
True
|
@@ -489,7 +489,7 @@ class MemoryChunkScratch(MemoryChunkLonglivedArray):
|
|
489
489
|
|
490
490
|
EXAMPLES::
|
491
491
|
|
492
|
-
sage: from sage_setup.autogen.interpreters import *
|
492
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
493
493
|
sage: mc = MemoryChunkScratch('registers', ty_python)
|
494
494
|
sage: mc.needs_cleanup_on_error()
|
495
495
|
True
|
@@ -508,7 +508,7 @@ class MemoryChunkScratch(MemoryChunkLonglivedArray):
|
|
508
508
|
|
509
509
|
EXAMPLES::
|
510
510
|
|
511
|
-
sage: from sage_setup.autogen.interpreters import *
|
511
|
+
sage: from sage_setup.autogen.interpreters.internal import *
|
512
512
|
sage: mc = MemoryChunkScratch('registers', ty_python)
|
513
513
|
sage: print(mc.handle_cleanup())
|
514
514
|
for i in range(self._n_registers):
|