Eolian: Fix Class's class methods
This commit is contained in:
parent
9acfcf842e
commit
3324f92276
|
@ -663,8 +663,16 @@ cdef class Class(object):
|
||||||
:return: the class
|
:return: the class
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
cdef:
|
||||||
|
const Eolian_Class *klass
|
||||||
|
Class ret
|
||||||
if isinstance(class_name, unicode): class_name = PyUnicode_AsUTF8String(class_name)
|
if isinstance(class_name, unicode): class_name = PyUnicode_AsUTF8String(class_name)
|
||||||
cdef const Eolian_Class *klass = eolian_class_get_by_name(class_name)
|
klass = eolian_class_get_by_name(class_name)
|
||||||
|
if klass is NULL:
|
||||||
|
return
|
||||||
|
ret = Class.__new__(Class)
|
||||||
|
ret._set_obj(klass)
|
||||||
|
return ret
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def get_by_file(cls, file_name):
|
def get_by_file(cls, file_name):
|
||||||
|
@ -674,8 +682,16 @@ cdef class Class(object):
|
||||||
:return: the class stored in the file
|
:return: the class stored in the file
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
cdef:
|
||||||
|
const Eolian_Class *klass
|
||||||
|
Class ret
|
||||||
if isinstance(file_name, unicode): file_name = PyUnicode_AsUTF8String(file_name)
|
if isinstance(file_name, unicode): file_name = PyUnicode_AsUTF8String(file_name)
|
||||||
cdef const Eolian_Class *klass = eolian_class_get_by_file(file_name)
|
klass = eolian_class_get_by_file(file_name)
|
||||||
|
if klass is NULL:
|
||||||
|
return
|
||||||
|
ret = Class.__new__(Class)
|
||||||
|
ret._set_obj(klass)
|
||||||
|
return ret
|
||||||
|
|
||||||
property filename:
|
property filename:
|
||||||
"""Returns the name of the file containing the given class.
|
"""Returns the name of the file containing the given class.
|
||||||
|
|
Loading…
Reference in New Issue