// @generated by Thrift for [[[ program path ]]] // This file is probably not the place you want to edit! package module // [[[ program thrift source path ]]] import ( thrift "github.com/facebook/fbthrift/thrift/lib/go/thrift" metadata "github.com/facebook/fbthrift/thrift/lib/thrift/metadata" ) // mapsCopy is a copy of maps.Copy from Go 1.21 // TODO: remove mapsCopy once we can safely upgrade to Go 1.21 without requiring any rollback. func mapsCopy[M1 ~map[K]V, M2 ~map[K]V, K comparable, V any](dst M1, src M2) { for k, v := range src { dst[k] = v } } // (needed to ensure safety because of naive import list construction) var _ = thrift.ZERO // TODO: uncomment when can safely upgrade to Go 1.21 without requiring any rollback. // var _ = maps.Copy[map[int]int, map[int]int] var _ = metadata.GoUnusedProtection__ // Premade Thrift types var ( premadeThriftType_string = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_STRING_TYPE.Ptr(), ) premadeThriftType_list_string = metadata.NewThriftType().SetTList( metadata.NewThriftListType(). SetValueType(premadeThriftType_string), ) premadeThriftType_module_NonComparableStruct = metadata.NewThriftType().SetTStruct( metadata.NewThriftStructType(). SetName("module.NonComparableStruct"), ) premadeThriftType_i64 = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_I64_TYPE.Ptr(), ) premadeThriftType_map_module_NonComparableStruct_i64 = metadata.NewThriftType().SetTMap( metadata.NewThriftMapType(). SetKeyType(premadeThriftType_module_NonComparableStruct). SetValueType(premadeThriftType_i64), ) premadeThriftType_module_GetEntityResponse = metadata.NewThriftType().SetTStruct( metadata.NewThriftStructType(). SetName("module.GetEntityResponse"), ) premadeThriftType_module_GetEntityRequest = metadata.NewThriftType().SetTStruct( metadata.NewThriftStructType(). SetName("module.GetEntityRequest"), ) premadeThriftType_bool = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_BOOL_TYPE.Ptr(), ) premadeThriftType_byte = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_BYTE_TYPE.Ptr(), ) premadeThriftType_i16 = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_I16_TYPE.Ptr(), ) premadeThriftType_i32 = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_I32_TYPE.Ptr(), ) premadeThriftType_double = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_DOUBLE_TYPE.Ptr(), ) premadeThriftType_binary = metadata.NewThriftType().SetTPrimitive( metadata.ThriftPrimitiveType_THRIFT_BINARY_TYPE.Ptr(), ) premadeThriftType_map_string_string = metadata.NewThriftType().SetTMap( metadata.NewThriftMapType(). SetKeyType(premadeThriftType_string). SetValueType(premadeThriftType_string), ) premadeThriftType_set_string = metadata.NewThriftType().SetTSet( metadata.NewThriftSetType(). SetValueType(premadeThriftType_string), ) ) var structMetadatas = []*metadata.ThriftStruct{ metadata.NewThriftStruct(). SetName("module.GetEntityRequest"). SetIsUnion(false). SetFields( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("id"). SetIsOptional(false). SetType(premadeThriftType_string), }, ), metadata.NewThriftStruct(). SetName("module.GetEntityResponse"). SetIsUnion(false). SetFields( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("entity"). SetIsOptional(false). SetType(premadeThriftType_string), }, ), metadata.NewThriftStruct(). SetName("module.NonComparableStruct"). SetIsUnion(false). SetFields( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("foo"). SetIsOptional(false). SetType(premadeThriftType_string), metadata.NewThriftField(). SetId(2). SetName("bar"). SetIsOptional(false). SetType(premadeThriftType_list_string), metadata.NewThriftField(). SetId(3). SetName("baz"). SetIsOptional(false). SetType(premadeThriftType_map_module_NonComparableStruct_i64), }, ), } var exceptionMetadatas = []*metadata.ThriftException{ } var enumMetadatas = []*metadata.ThriftEnum{ } var serviceMetadatas = []*metadata.ThriftService{ metadata.NewThriftService(). SetName("module.GetEntity"). SetFunctions( []*metadata.ThriftFunction{ metadata.NewThriftFunction(). SetName("getEntity"). SetIsOneway(false). SetReturnType(premadeThriftType_module_GetEntityResponse). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("r"). SetIsOptional(false). SetType(premadeThriftType_module_GetEntityRequest), }, ), metadata.NewThriftFunction(). SetName("getBool"). SetIsOneway(false). SetReturnType(premadeThriftType_bool), metadata.NewThriftFunction(). SetName("getByte"). SetIsOneway(false). SetReturnType(premadeThriftType_byte), metadata.NewThriftFunction(). SetName("getI16"). SetIsOneway(false). SetReturnType(premadeThriftType_i16), metadata.NewThriftFunction(). SetName("getI32"). SetIsOneway(false). SetReturnType(premadeThriftType_i32), metadata.NewThriftFunction(). SetName("getI64"). SetIsOneway(false). SetReturnType(premadeThriftType_i64), metadata.NewThriftFunction(). SetName("getDouble"). SetIsOneway(false). SetReturnType(premadeThriftType_double), metadata.NewThriftFunction(). SetName("getString"). SetIsOneway(false). SetReturnType(premadeThriftType_string), metadata.NewThriftFunction(). SetName("getBinary"). SetIsOneway(false). SetReturnType(premadeThriftType_binary), metadata.NewThriftFunction(). SetName("getMap"). SetIsOneway(false). SetReturnType(premadeThriftType_map_string_string), metadata.NewThriftFunction(). SetName("getSet"). SetIsOneway(false). SetReturnType(premadeThriftType_set_string), metadata.NewThriftFunction(). SetName("getList"). SetIsOneway(false). SetReturnType(premadeThriftType_list_string), metadata.NewThriftFunction(). SetName("getLegacyStuff"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("numPos"). SetIsOptional(false). SetType(premadeThriftType_i64), metadata.NewThriftField(). SetId(-1). SetName("numNeg1"). SetIsOptional(false). SetType(premadeThriftType_i64), metadata.NewThriftField(). SetId(-2). SetName("numNeg2"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getCtxCollision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("ctx"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getCtx1Collision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("ctx"). SetIsOptional(false). SetType(premadeThriftType_i64), metadata.NewThriftField(). SetId(2). SetName("ctx1"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getContextCollision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("context"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getOutCollision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("out"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getOut1Collision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("out"). SetIsOptional(false). SetType(premadeThriftType_i64), metadata.NewThriftField(). SetId(2). SetName("out1"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getInCollision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("in"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getIn1Collision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("in"). SetIsOptional(false). SetType(premadeThriftType_i64), metadata.NewThriftField(). SetId(2). SetName("in1"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getErrCollision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("err"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), metadata.NewThriftFunction(). SetName("getErr1Collision"). SetIsOneway(false). SetReturnType(premadeThriftType_i32). SetArguments( []*metadata.ThriftField{ metadata.NewThriftField(). SetId(1). SetName("err"). SetIsOptional(false). SetType(premadeThriftType_i64), metadata.NewThriftField(). SetId(2). SetName("err1"). SetIsOptional(false). SetType(premadeThriftType_i64), }, ), }, ), } // GetThriftMetadata returns complete Thrift metadata for current and imported packages. func GetThriftMetadata() *metadata.ThriftMetadata { allEnums := GetEnumsMetadata() allStructs := GetStructsMetadata() allExceptions := GetExceptionsMetadata() allServices := GetServicesMetadata() return metadata.NewThriftMetadata(). SetEnums(allEnums). SetStructs(allStructs). SetExceptions(allExceptions). SetServices(allServices) } // GetEnumsMetadata returns Thrift metadata for enums in the current and recursively included packages. func GetEnumsMetadata() map[string]*metadata.ThriftEnum { allEnumsMap := make(map[string]*metadata.ThriftEnum) // Add enum metadatas from the current program... for _, enumMetadata := range enumMetadatas { allEnumsMap[enumMetadata.GetName()] = enumMetadata } // ...now add enum metadatas from recursively included programs. return allEnumsMap } // GetStructsMetadata returns Thrift metadata for structs in the current and recursively included packages. func GetStructsMetadata() map[string]*metadata.ThriftStruct { allStructsMap := make(map[string]*metadata.ThriftStruct) // Add struct metadatas from the current program... for _, structMetadata := range structMetadatas { allStructsMap[structMetadata.GetName()] = structMetadata } // ...now add struct metadatas from recursively included programs. return allStructsMap } // GetExceptionsMetadata returns Thrift metadata for exceptions in the current and recursively included packages. func GetExceptionsMetadata() map[string]*metadata.ThriftException { allExceptionsMap := make(map[string]*metadata.ThriftException) // Add exception metadatas from the current program... for _, exceptionMetadata := range exceptionMetadatas { allExceptionsMap[exceptionMetadata.GetName()] = exceptionMetadata } // ...now add exception metadatas from recursively included programs. return allExceptionsMap } // GetServicesMetadata returns Thrift metadata for services in the current and recursively included packages. func GetServicesMetadata() map[string]*metadata.ThriftService { allServicesMap := make(map[string]*metadata.ThriftService) // Add service metadatas from the current program... for _, serviceMetadata := range serviceMetadatas { allServicesMap[serviceMetadata.GetName()] = serviceMetadata } // ...now add service metadatas from recursively included programs. return allServicesMap } // GetThriftMetadataForService returns Thrift metadata for the given service. func GetThriftMetadataForService(scopedServiceName string) *metadata.ThriftMetadata { thriftMetadata := GetThriftMetadata() allServicesMap := thriftMetadata.GetServices() relevantServicesMap := make(map[string]*metadata.ThriftService) serviceMetadata := allServicesMap[scopedServiceName] // Visit and record all recursive parents of the target service. for serviceMetadata != nil { relevantServicesMap[serviceMetadata.GetName()] = serviceMetadata if serviceMetadata.IsSetParent() { serviceMetadata = allServicesMap[serviceMetadata.GetParent()] } else { serviceMetadata = nil } } thriftMetadata.SetServices(relevantServicesMap) return thriftMetadata }