mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-06 12:26:26 +00:00
Backport some codegen fixes wrt unicode
This commit is contained in:
@@ -26,9 +26,10 @@ class Base(object):
|
|||||||
import platform
|
import platform
|
||||||
if tuple(map(int, platform.python_version_tuple())) < (2, 8):
|
if tuple(map(int, platform.python_version_tuple())) < (2, 8):
|
||||||
from io import open as unicode_open
|
from io import open as unicode_open
|
||||||
|
unicode_type = unicode
|
||||||
else:
|
else:
|
||||||
unicode_open = open
|
unicode_open = open
|
||||||
unicode = lambda x, *args, **kwargs: x
|
unicode_type = lambda x, *args, **kwargs: x
|
||||||
f = unicode_open(self.file_name, 'w', encoding='utf-8')
|
f = unicode_open(self.file_name, 'w', encoding='utf-8')
|
||||||
f.write(unicode(repr(self), encoding='utf-8', errors='ignore'))
|
f.write(unicode_type(repr(self), encoding='utf-8', errors='ignore'))
|
||||||
f.close()
|
f.close()
|
||||||
|
|||||||
@@ -20,9 +20,10 @@
|
|||||||
import operator
|
import operator
|
||||||
|
|
||||||
import nodes
|
import nodes
|
||||||
|
import codegen
|
||||||
import templates
|
import templates
|
||||||
|
|
||||||
class SchemaClass:
|
class SchemaClass(codegen.Base):
|
||||||
def __init__(self, mapping):
|
def __init__(self, mapping):
|
||||||
|
|
||||||
class UnmetDependenciesException(Exception): pass
|
class UnmetDependenciesException(Exception): pass
|
||||||
@@ -191,10 +192,8 @@ class SchemaClass:
|
|||||||
'}','',''))
|
'}','',''))
|
||||||
|
|
||||||
self.str = "\n".join(statements)
|
self.str = "\n".join(statements)
|
||||||
|
|
||||||
|
self.file_name = '%s-schema.cpp'%self.schema_name
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return self.str
|
return self.str
|
||||||
def emit(self):
|
|
||||||
f = open('%s-schema.cpp'%self.schema_name, 'w', encoding='utf-8')
|
|
||||||
f.write(str(self))
|
|
||||||
f.close()
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user