summaryrefslogtreecommitdiff
path: root/scipy/base/_internal.py
diff options
context:
space:
mode:
authorTravis Oliphant <oliphant@enthought.com>2005-10-12 09:50:38 +0000
committerTravis Oliphant <oliphant@enthought.com>2005-10-12 09:50:38 +0000
commit33e2d21b6e75d11572dbadb7a8a0038cd02206eb (patch)
tree53667f81c187a409b4536e58e4ae5660f84a4c8f /scipy/base/_internal.py
parente3ba6c65315e036990a8c28fd8dd5a072c7dc635 (diff)
downloadnumpy-33e2d21b6e75d11572dbadb7a8a0038cd02206eb.tar.gz
Fixed remainder to behaved like Python.
Diffstat (limited to 'scipy/base/_internal.py')
-rw-r--r--scipy/base/_internal.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/scipy/base/_internal.py b/scipy/base/_internal.py
index f5d37f57f..94ec1da57 100644
--- a/scipy/base/_internal.py
+++ b/scipy/base/_internal.py
@@ -21,12 +21,13 @@ _cnum = _flagdict['CONTIGUOUS']
_fnum = _flagdict['FORTRAN']
class flagsobj(dict):
- def __init__(self, arr, flags):
+ def __init__(self, arr, flags, scalar):
self._arr = arr
self._flagnum = flags
for k in _defflags:
num = _flagdict[k]
dict.__setitem__(self, k, flags & num == num)
+ self.scalar = scalar
def __getitem__(self, key):
if not isinstance(key, str):
@@ -68,6 +69,8 @@ class flagsobj(dict):
raise KeyError, "Unknown flag: %s" % key
def __setitem__(self, item, val):
+ if self.scalar:
+ raise ValueError, "Cannot set flags on array scalars."
val = not not val # convert to boolean
if item not in _setable:
raise KeyError, "Cannot set flag", item