Refactored to allow ConceptEvaluator
This commit is contained in:
+45
-5
@@ -1,3 +1,7 @@
|
||||
import inspect
|
||||
import sys
|
||||
|
||||
|
||||
def sysarg_to_string(argv):
|
||||
"""
|
||||
Transform a list of strings into a single string
|
||||
@@ -16,24 +20,38 @@ def sysarg_to_string(argv):
|
||||
result += '"' + s + '"' if " " in s else s
|
||||
first = False
|
||||
|
||||
if result[0] in ('"', "'"):
|
||||
result = result[1:-1] # strip quotes
|
||||
return result
|
||||
|
||||
|
||||
def get_class(kls):
|
||||
def get_class(qname):
|
||||
"""
|
||||
Loads a class from its string full qualified name
|
||||
:param kls:
|
||||
Loads a class from its full qualified name
|
||||
:param qname:
|
||||
:return:
|
||||
"""
|
||||
parts = kls.split('.')
|
||||
parts = qname.split('.')
|
||||
module = ".".join(parts[:-1])
|
||||
m = __import__(module)
|
||||
for comp in parts[1:]:
|
||||
m = getattr(m, comp)
|
||||
return m
|
||||
|
||||
def get_module(qname):
|
||||
"""
|
||||
Loads a module from its full qualified name
|
||||
:param qname:
|
||||
:return:
|
||||
"""
|
||||
parts = qname.split('.')
|
||||
m = __import__(qname)
|
||||
for comp in parts[1:]:
|
||||
m = getattr(m, comp)
|
||||
return m
|
||||
|
||||
def get_object(kls, *args, **kwargs):
|
||||
|
||||
def new_object(kls, *args, **kwargs):
|
||||
"""
|
||||
New instance of an object
|
||||
:param kls:
|
||||
@@ -56,3 +74,25 @@ def get_full_qualified_name(obj):
|
||||
return obj.__class__.__name__ # Avoid reporting __builtin__
|
||||
else:
|
||||
return module + '.' + obj.__class__.__name__
|
||||
|
||||
|
||||
def get_classes(module_name):
|
||||
mod = get_module(module_name)
|
||||
for name in dir(mod):
|
||||
obj = getattr(mod, name)
|
||||
if inspect.isclass(obj):
|
||||
yield obj
|
||||
|
||||
|
||||
def remove_from_list(lst, to_remove):
|
||||
"""
|
||||
Removes elements from a list if they exist
|
||||
:param lst:
|
||||
:param to_remove:
|
||||
:return:
|
||||
"""
|
||||
for item in to_remove:
|
||||
if item in lst:
|
||||
lst.remove(item)
|
||||
|
||||
return lst
|
||||
|
||||
Reference in New Issue
Block a user