Exemplo n.º 1
0
def generate_import_table(opsets):
    global import_supported_num
    global import_total_num
    headers = ['ONNX Operator']
    value_matrix = []
    import_funcs_opset_d = yaml.load(
        open(os.path.join(CURRENT_PATH, 'importer_funcs_opset.yaml'), 'r'))
    for o in opsets:
        headers.append(str(o))
    headers.append('Description')
    for func_name in sorted(import_funcs_opset_d):
        v = [" "+func_name+" "]
        opset_support_list = import_funcs_opset_d[func_name]
        import_total_num += 1
        is_supported = False
        for ops in opsets:
            if str(ops) in opset_support_list:
                if opset_support_list[str(ops)]:
                    v.append(IMPORT_SUPPORTED_SYMBOL)
                    is_supported = True
                else:
                    v.append(IMPORT_DEFINED_SYMBOL)
            else:
                v.append(None)
        if is_supported:
            import_supported_num += 1
        value_matrix.append(v)
    headers = [x.replace(x, " "+x+" ") for x in headers]
    writer = pytablewriter.RstSimpleTableWriter()
    writer.headers = headers
    writer.value_matrix = value_matrix
    return writer.dumps()
Exemplo n.º 2
0
    def __init__(self):
        self.typeclass = None
        self.strict_level = None
        self.headers = None
        self.value_list = None

        self.__table_writer = ptw.RstSimpleTableWriter()
        self.__table_writer._dp_extractor.type_value_map = {
            NullString(None).typecode: '``""``',
            NoneType(None).typecode: "``None``",
            Infinity(None).typecode: '``Decimal("inf")``',
            Nan(None).typecode: '``Decimal("nan")``',
        }
        self.__table_writer.value_map = {
            True: "``True``",
            False: "``False``",
            '``"127.0.0.1"``': '``ip_address("127.0.0.1")``',
        }
Exemplo n.º 3
0
def main():
    writer = pytablewriter.RstSimpleTableWriter()
    writer.table_name = "生成に関するパターン"
    writer.headers = ["パターン名", "概要", "GoF", "Code Complete[1]"]
    writer.value_matrix = [
        [
            "Abstract Factory", "関連する一連のインスタンスを状況に応じて、適切に生成する方法を提供する。", "Yes",
            "Yes"
        ],
        ["Builder", "複合化されたインスタンスの生成過程を隠蔽する。", "Yes", "No"],
        [
            "Factory Method", "実際に生成されるインスタンスに依存しない、インスタンスの生成方法を提供する。", "Yes",
            "Yes"
        ],
        ["Prototype", "同様のインスタンスを生成するために、原型のインスタンスを複製する。", "Yes", "No"],
        ["Singleton", "あるクラスについて、インスタンスが単一であることを保証する。", "Yes", "Yes"],
    ]
    writer.dump("multibyte_table_output.txt")
Exemplo n.º 4
0
def generate_export_table(opsets, export_result):
    global export_supported_num
    global export_total_num
    headers = ['NNabla Functions']
    current_supported = ['6', '9']
    for o in opsets:
        headers.append(str(o))
    headers.append('Description')
    value_matrix = []
    funcs_opset_d = yaml.load(open(
        os.path.join(CURRENT_PATH, 'exporter_funcs_opset.yaml'), 'r'),
                              Loader=yaml.FullLoader)
    export_refine_d = {}
    for func, impl in funcs_opset_d.items():
        if impl and '@' in impl[0]:
            func_list = [func_decl.split('@')[0] for func_decl in impl]
            export_refine_d[func] = func_list
    for func_name in sorted(funcs_opset_d):
        v = [" " + func_name + " "]
        export_total_num += 1
        test_result = export_result.get(func_name, {}).copy()
        decl = None
        if func_name in export_refine_d:
            decl = 'By ' + ','.join(export_refine_d[func_name])
            for ops in current_supported:
                if ops not in test_result:
                    test_result[str(ops)] = "Not Test"
        for ops in opsets:
            if str(ops) in test_result:
                if test_result[str(ops)] == 'OK':
                    v.append(EXPORT_SUPPORTED_SYMBOL)
                else:
                    v.append(PART_EXPORT_SUPPORTED_SYMBOL)
            else:
                v.append(None)
        v.append(decl)
        if test_result:
            export_supported_num += 1
        value_matrix.append(v)
    headers = [x.replace(x, " " + x + " ") for x in headers]
    writer = pytablewriter.RstSimpleTableWriter()
    writer.headers = headers
    writer.value_matrix = value_matrix
    return writer.dumps()
Exemplo n.º 5
0
#!/usr/bin/env python
# encoding: utf-8
"""
.. codeauthor:: Tsuyoshi Hombashi <*****@*****.**>
"""

import io

import pytablewriter

writer = pytablewriter.RstSimpleTableWriter()
writer.table_name = "生成に関するパターン"
writer.header_list = ["パターン名", "概要", "GoF", "Code Complete[1]"]
writer.value_matrix = [
    ["Abstract Factory", "関連する一連のインスタンスを状況に応じて、適切に生成する方法を提供する。", "Yes", "Yes"],
    ["Builder", "複合化されたインスタンスの生成過程を隠蔽する。", "Yes", "No"],
    ["Factory Method", "実際に生成されるインスタンスに依存しない、インスタンスの生成方法を提供する。", "Yes", "Yes"],
    ["Prototype", "同様のインスタンスを生成するために、原型のインスタンスを複製する。", "Yes", "No"],
    ["Singleton", "あるクラスについて、インスタンスが単一であることを保証する。", "Yes", "Yes"],
]

with io.open("multibyte_table_output.txt", "w", encoding="utf-8") as f:
    writer.stream = f
    writer.write_table()