# frozen_string_literal: true
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: protostructure.proto

require 'google/protobuf'


descriptor_data = "\n\x14protostructure.proto\x12\x0eprotostructure\"\x8f\x01\n\x06Struct\x12,\n\x06\x66ields\x18\x01 \x03(\x0b\x32\x1c.protostructure.Struct.Field\x1aW\n\x05\x46ield\x12\x0c\n\x04Name\x18\x01 \x01(\t\x12\x0f\n\x07PkgPath\x18\x02 \x01(\t\x12\x0b\n\x03Tag\x18\x03 \x01(\t\x12\"\n\x04type\x18\x04 \x01(\x0b\x32\x14.protostructure.Type\"\x98\x01\n\x04Type\x12.\n\tprimitive\x18\x01 \x01(\x0b\x32\x19.protostructure.PrimitiveH\x00\x12.\n\tcontainer\x18\x02 \x01(\x0b\x32\x19.protostructure.ContainerH\x00\x12(\n\x06struct\x18\x03 \x01(\x0b\x32\x16.protostructure.StructH\x00\x42\x06\n\x04type\"\x19\n\tPrimitive\x12\x0c\n\x04kind\x18\x01 \x01(\r\"o\n\tContainer\x12\x0c\n\x04kind\x18\x01 \x01(\r\x12\"\n\x04\x65lem\x18\x02 \x01(\x0b\x32\x14.protostructure.Type\x12!\n\x03key\x18\x03 \x01(\x0b\x32\x14.protostructure.Type\x12\r\n\x05\x63ount\x18\x04 \x01(\x05\x42%Z#github.com/mitchellh/protostructureb\x06proto3"

pool = Google::Protobuf::DescriptorPool.generated_pool

begin
  pool.add_serialized_file(descriptor_data)
rescue TypeError => e
  # Compatibility code: will be removed in the next major version.
  require 'google/protobuf/descriptor_pb'
  parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
  parsed.clear_dependency
  serialized = parsed.class.encode(parsed)
  file = pool.add_serialized_file(serialized)
  warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
  imports = [
  ]
  imports.each do |type_name, expected_filename|
    import_file = pool.lookup(type_name).file_descriptor
    if import_file.name != expected_filename
      warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
    end
  end
  warn "Each proto file must use a consistent fully-qualified name."
  warn "This will become an error in the next major version."
end

module Protostructure
  Struct = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("protostructure.Struct").msgclass
  Struct::Field = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("protostructure.Struct.Field").msgclass
  Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("protostructure.Type").msgclass
  Primitive = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("protostructure.Primitive").msgclass
  Container = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("protostructure.Container").msgclass
end
