Salome HOME
Minor documentation improvements
[modules/adao.git] / src / daComposant / daCore / PlatformInfo.py
index fd78c50873f4fc4f8043f000c2312cc06b4a4cad..45eafeeaa6d4f73372ea4177f446920aaca1581d 100644 (file)
@@ -1,6 +1,6 @@
 # -*- coding: utf-8 -*-
 #
-# Copyright (C) 2008-2020 EDF R&D
+# Copyright (C) 2008-2021 EDF R&D
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
@@ -93,7 +93,7 @@ class PlatformInfo(object):
             if hasattr(platform, 'linux_distribution'):
                 __msg += "\n%s%30s : %s" %(__prefix,
                     "platform.linux_distribution",str(platform.linux_distribution()))
-            else:
+            elif hasattr(platform, 'dist'):
                 __msg += "\n%s%30s : %s" %(__prefix,"platform.dist",str(platform.dist()))
         elif sys.platform.startswith('darwin'):
             if hasattr(platform, 'mac_ver'):
@@ -104,7 +104,7 @@ class PlatformInfo(object):
                     if (platform.mac_ver()[0].split('.')[1] == key):
                         __msg += "\n%s%30s : %s" %(__prefix,
                             "platform.mac_ver",str(platform.mac_ver()[0]+"(" + macosx_dict[key]+")"))
-            else:
+            elif hasattr(platform, 'dist'):
                 __msg += "\n%s%30s : %s" %(__prefix,"platform.dist",str(platform.dist()))
         elif os.name == 'nt':
             __msg += "\n%s%30s : %s" %(__prefix,"platform.win32_ver",platform.win32_ver()[1])
@@ -253,9 +253,12 @@ def uniq( __sequence ):
 
 def isIterable( __sequence, __check = False, __header = "" ):
     """
-    Vérification que l'argument est un itérable
+    Vérification que l'argument est un itérable interne.
+    Remarque : pour permettre le test correct en MultiFonctions,
+    - Ne pas accepter comme itérable un "numpy.ndarray"
+    - Ne pas accepter comme itérable avec hasattr(__sequence, "__iter__")
     """
-    if  isinstance( __sequence, (list, tuple, map) ):
+    if  isinstance( __sequence, (list, tuple, map, dict) ):
         __isOk = True
     elif type(__sequence).__name__ in ('generator','range'):
         __isOk = True
@@ -310,8 +313,9 @@ def checkFileNameImportability( __filename, __warnInsteadOfPrint=True ):
             "no \"__init__.py\" file in the same directory."+\
             "\n  The name of the file in question is the following:"+\
             "\n  %s")%(int(str(__filename).count(".")-1), __filename)
-        if __warnInsteadOfPrint: logging.warning(__msg)
-        else:                    print(__msg)
+        if __warnInsteadOfPrint is None: pass
+        elif __warnInsteadOfPrint:       logging.warning(__msg)
+        else:                            print(__msg)
     else:
         __conform = True
     #