Beispiel #1
0
from Tools.Extension.spp_base import (
    ArrayProtoType,
    ProtoType,
    EncodedSize,
    Enum,
    Field,
    Generator,
    GeneratorResult,
    VarintProtoType,
    Message,
    ProtoFile,
)

from Tools.Extension.spp_base import run_generator

Support.verify_imports()

# Availability checked by verify_imports
import google.protobuf.descriptor_pb2 as descriptor

import Tools.Extension.DataSources_pb2 as ds

c_support_version = 1
c_support_version_header = f"C Conversion Support - {c_support_version}"

NUMERIC_TYPES = {
    NumericType.I8: "int8_t",
    NumericType.I16: "int16_t",
    NumericType.I32: "int32_t",
    NumericType.I64: "int64_t",
    NumericType.U8: "uint8_t",
"""

from optparse import OptionParser
import sys

from Tools.Extension.spp_support import verify_imports

from Tools.Extension.spp_base import (
    Generator,
    GeneratorResult,
    ProtoFile,
)

from Tools.Extension.spp_base import run_generator

verify_imports()

# Availability checked by verify_imports
import google.protobuf.descriptor_pb2 as descriptor


class SummaryProtoFile(ProtoFile):
    def generate_summary(self):
        yield "Source.Identifier: Name\n"
        for msg in self.messages:
            if msg.source and msg.identifier:
                yield f"{msg.source}.{msg.identifier}: {msg.get_full_name()}\n"


class SummaryGenerator(Generator):
    def create_proto_file(self, fdesc: descriptor.FileDescriptorProto):