Skip to content

Commit

Permalink
fixed embray#18
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelontiveros committed May 4, 2024
1 parent d7706ce commit cacb42b
Showing 1 changed file with 16 additions and 3 deletions.
19 changes: 16 additions & 3 deletions gappy/core.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ MakeImmutable(\$GAPPY_ERROUT);


# TODO: Change autoload=True by default
cdef initialize(gap_root=None, gaprc=None, workspace=None, workspace_valid=False, autoload=False):
cdef initialize(gap_root=None, gap_memory=None, gaprc=None, workspace=None, workspace_valid=False, autoload=False):
"""
Initialize the GAP library, if it hasn't already been initialized.
Expand All @@ -225,7 +225,7 @@ cdef initialize(gap_root=None, gaprc=None, workspace=None, workspace_valid=False
_gap_root = gap_root.encode(_FS_ENCODING, 'surrogateescape')
argv[2] = _gap_root

memory_pool = get_gap_memory_pool_size().encode('ascii')
memory_pool = get_gap_memory_pool_size().encode('ascii') if gap_memory is None else (str(gap_memory)+'m').encode('ascii')
argv[3] = '-o'
argv[4] = memory_pool
argv[5] = '-s'
Expand Down Expand Up @@ -294,6 +294,7 @@ cdef initialize(gap_root=None, gaprc=None, workspace=None, workspace_valid=False
# Return a dict of the final initialization args (after handling defaults)
return {
'gap_root': gap_root,
'gap_memor': memory_pool,
'gaprc': gaprc,
'workspace': workspace,
'autoload': autoload
Expand Down Expand Up @@ -539,6 +540,9 @@ cdef class Gap:
interpreter. This should be the path containing the ``lib/`` and
``pkg/`` directories for the standard GAP libraries. Equivalent to
the ``-l`` command-line argument to ``gap``.
gap_memory : 'int'
GAP's memory in megabytes. Equivalent to the ``o`` command-line
argument to ``gap``.
gaprc : `str` or `pathlib.Path`
A GAP "runtime config" file containing GAP commands to run immediately
upon GAP interpreter startup. Equivalent to passing a GAP file to
Expand Down Expand Up @@ -603,6 +607,7 @@ cdef class Gap:

self._init_kwargs.update(initialize(
gap_root=self._init_kwargs['gap_root'],
gap_memory=self._init_kwargs['gap_memory'],
gaprc=self._init_kwargs['gaprc'],
workspace=self._init_kwargs['workspace'],
workspace_valid=self._init_kwargs['workspace_valid'],
Expand All @@ -611,7 +616,7 @@ cdef class Gap:
_gap_instance = self
return True

def __init__(self, gap_root=None, gaprc=None, workspace=None, workspace_valid=False,
def __init__(self, gap_root=None, gap_memory=None, gaprc=None, workspace=None, workspace_valid=False,
autoinit=False, autoload=False):
if _gap_is_initialized:
raise RuntimeError(
Expand All @@ -620,6 +625,7 @@ cdef class Gap:

self._init_kwargs.update({
'gap_root': gap_root,
'gap_memory': gap_memory,
'gaprc': gaprc,
'workspace': workspace,
'workspace_valid': workspace_valid,
Expand Down Expand Up @@ -837,6 +843,13 @@ cdef class Gap:

return self._init_kwargs.get('gap_root')

@property
def gap_memory(self):
"""
GAP's memory in megabytes.
"""
return self._init_kwargs.get('gap_memory')

@property
def gaprc(self):
"""
Expand Down

0 comments on commit cacb42b

Please sign in to comment.