All functions:
  Elements:
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Args::parse
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:138,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:142,1
    - Dst: '&str::into'
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:142,1
    - Dst: fs::create_dir_all
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:146,1
    - Dst: fs::read_dir
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:151,1
    - Dst: path
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:153,1
    - Dst: is_file
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:154,1
    - Dst: convert_corpus_file
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:155,1
    - Dst: Path::new
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:157,1
    - Dst: generate_random_file
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:169,1
    - Dst: Path::new
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:170,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:180,1
    - Dst: '&str::into'
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:180,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:183,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 66
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 184
      start: 137
    functionDepth: 6
    functionLinenumber: 137
    functionLinenumberEnd: 184
    functionName: main
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs
    functionUses: 0
    functionsReached:
    - convert_corpus_file
    - Args::parse
    - fs::create_dir_all
    - fs::read_dir
    - Err
    - Ok
    - generate_random_file
    - Path::new
    - is_file
    - path
    - '&str::into'
    linkageType: ''
    returnType: Result
    signature: fn main() -> Result<(), Box<dyn std::error::Error>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:28,1
    - Dst: TConfigurationBuilder::max_message_size
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:28,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:29,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:29,1
    - Dst: Self::max_frame_size
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:28,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:30,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:30,1
    - Dst: Option::max_container_size
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:28,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:31,1
    - Dst: Option::max_string_size
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:28,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:32,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:32,1
    - Dst: Option::build
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:28,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:28,1
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:36,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:36,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:36,1
    - Dst: TBufferChannel::set_readable_bytes
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:37,1
    - Dst: TCompactInputProtocol::with_config
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:38,1
    - Dst: FuzzTest::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 34
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 6
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: run
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs
    functionUses: 0
    functionsReached:
    - Self::max_frame_size
    - Some
    - Option::max_container_size
    - TCompactInputProtocol::with_config
    - TBufferChannel::with_capacity
    - thrift::Result::unwrap
    - Option::max_string_size
    - TBufferChannel::set_readable_bytes
    - TConfigurationBuilder::max_message_size
    - '&[u8]::len'
    - TConfiguration::builder
    - Option::build
    - FuzzTest::read_from_in_protocol
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn run(data: &[u8]) -> thrift::Result<FuzzTest>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: ThriftTestSyncHandlerImpl::handle_test_void
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_test_void(&self) -> thrift::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - String
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: ThriftTestSyncHandlerImpl::handle_test_string
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_string(&self, thing: String) -> thrift::Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - uuid::Uuid
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: ThriftTestSyncHandlerImpl::handle_test_uuid
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_uuid(&self, thing: uuid::Uuid) -> thrift::Result<uuid::Uuid>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: ThriftTestSyncHandlerImpl::handle_test_bool
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_bool(&self, thing: bool) -> thrift::Result<bool>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: ThriftTestSyncHandlerImpl::handle_test_byte
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_byte(&self, thing: i8) -> thrift::Result<i8>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: ThriftTestSyncHandlerImpl::handle_test_i32
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_i32(&self, thing: i32) -> thrift::Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: ThriftTestSyncHandlerImpl::handle_test_i64
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_i64(&self, thing: i64) -> thrift::Result<i64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - OrderedFloat<f64>
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: ThriftTestSyncHandlerImpl::handle_test_double
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_double(&self, thing: OrderedFloat<f64>) -> thrift::Result<OrderedFloat<f64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - Vec<u8>
    constantsTouched: []
    func_position:
      end: 210
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionName: ThriftTestSyncHandlerImpl::handle_test_binary
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_binary(&self, thing: Vec<u8>) -> thrift::Result<Vec<u8>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - Xtruct
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: ThriftTestSyncHandlerImpl::handle_test_struct
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_struct(&self, thing: Xtruct) -> thrift::Result<Xtruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - Xtruct2
    constantsTouched: []
    func_position:
      end: 220
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionName: ThriftTestSyncHandlerImpl::handle_test_nest
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_nest(&self, thing: Xtruct2) -> thrift::Result<Xtruct2>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - BTreeMap<i32, i32>
    constantsTouched: []
    func_position:
      end: 225
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 225
    functionName: ThriftTestSyncHandlerImpl::handle_test_map
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_map(&self, thing: BTreeMap<i32, i32>) -> thrift::Result<BTreeMap<i32,
      i32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - BTreeMap<String, String>
    constantsTouched: []
    func_position:
      end: 233
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 233
    functionName: ThriftTestSyncHandlerImpl::handle_test_string_map
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_string_map(&self,thing: BTreeMap<String, String>,)
      -> thrift::Result<BTreeMap<String, String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - BTreeSet<i32>
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: ThriftTestSyncHandlerImpl::handle_test_set
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_set(&self, thing: BTreeSet<i32>) -> thrift::Result<BTreeSet<i32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - Vec<i32>
    constantsTouched: []
    func_position:
      end: 243
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionName: ThriftTestSyncHandlerImpl::handle_test_list
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_list(&self, thing: Vec<i32>) -> thrift::Result<Vec<i32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - Numberz
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: ThriftTestSyncHandlerImpl::handle_test_enum
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_enum(&self, thing: Numberz) -> thrift::Result<Numberz>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - UserId
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: ThriftTestSyncHandlerImpl::handle_test_typedef
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_typedef(&self, thing: UserId) -> thrift::Result<UserId>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BTreeMap::new
      Src: /src/thrift/test/rs/src/bin/test_server.rs:261,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:263,1
    - Dst: BTreeMap::new
      Src: /src/thrift/test/rs/src/bin/test_server.rs:266,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:268,1
    - Dst: BTreeMap::new
      Src: /src/thrift/test/rs/src/bin/test_server.rs:271,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:272,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:273,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:275,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 1
    argNames:
    - hello
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 276
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 276
    functionName: ThriftTestSyncHandlerImpl::handle_test_map_map
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - BTreeMap::new
    - SharedStruct::insert
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_map_map(&self, hello: i32) -> thrift::Result<BTreeMap<i32,
      BTreeMap<i32, i32>>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BTreeMap::new
      Src: /src/thrift/test/rs/src/bin/test_server.rs:290,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:291,1
    - Dst: Insanity::clone
      Src: /src/thrift/test/rs/src/bin/test_server.rs:291,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:292,1
    - Dst: BTreeMap::new
      Src: /src/thrift/test/rs/src/bin/test_server.rs:294,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:299,1
    - Dst: BTreeMap::new
      Src: /src/thrift/test/rs/src/bin/test_server.rs:301,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:302,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/test/rs/src/bin/test_server.rs:303,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 1
    argNames:
    - argument
    argTypes:
    - Insanity
    constantsTouched: []
    func_position:
      end: 306
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 306
    functionName: ThriftTestSyncHandlerImpl::handle_test_insanity
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - BTreeMap::new
    - SharedStruct::insert
    - Insanity::clone
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_insanity(&self,argument: Insanity,) -> thrift::Result<BTreeMap<UserId,
      BTreeMap<Numberz, Insanity>>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:321,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_server.rs:321,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:322,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:323,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:324,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - arg0
    - arg1
    - arg2
    argTypes:
    - i8
    - i32
    - i64
    - BTreeMap<i16, String>
    - Numberz
    - UserId
    constantsTouched: []
    func_position:
      end: 328
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 328
    functionName: ThriftTestSyncHandlerImpl::handle_test_multi
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Some
    - '&str::to_owned'
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_multi(&self,arg0: i8,arg1: i32,arg2: i64,_: BTreeMap<i16,
      String>,_: Numberz,_: UserId,) -> thrift::Result<Xtruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_server.rs:338,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:339,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:340,1
    - Dst: into
      Src: /src/thrift/test/rs/src/bin/test_server.rs:338,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_server.rs:343,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_server.rs:343,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:344,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - arg
    argTypes:
    - String
    constantsTouched: []
    func_position:
      end: 346
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 346
    functionName: ThriftTestSyncHandlerImpl::handle_test_exception
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Some
    - into
    - Err
    - Ok
    - '&str::into'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_exception(&self, arg: String) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_server.rs:358,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:359,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:360,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_server.rs:360,1
    - Dst: into
      Src: /src/thrift/test/rs/src/bin/test_server.rs:358,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_server.rs:363,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:364,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:365,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:366,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_server.rs:366,1
    - Dst: into
      Src: /src/thrift/test/rs/src/bin/test_server.rs:363,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:373,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_server.rs:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 2
    argNames:
    - arg0
    - arg1
    argTypes:
    - String
    - String
    constantsTouched: []
    func_position:
      end: 380
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 380
    functionName: ThriftTestSyncHandlerImpl::handle_test_multi_exception
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Some
    - into
    - Err
    - Ok
    - '&str::to_owned'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_multi_exception(&self, arg0: String, arg1: String)
      -> thrift::Result<Xtruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: thread::sleep
      Src: /src/thrift/test/rs/src/bin/test_server.rs:383,1
    - Dst: Duration::from_secs
      Src: /src/thrift/test/rs/src/bin/test_server.rs:383,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - seconds_to_sleep
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 385
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 385
    functionName: ThriftTestSyncHandlerImpl::handle_test_oneway
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Duration::from_secs
    - Ok
    - thread::sleep
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_test_oneway(&self, seconds_to_sleep: i32) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_server.rs:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thing
    argTypes:
    - String
    constantsTouched: []
    func_position:
      end: 394
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 394
    functionName: SecondServiceSyncHandlerImpl::handle_secondtest_string
    functionSourceFile: /src/thrift/test/rs/src/bin/test_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_secondtest_string(&self, thing: String) -> thrift::Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TcpStream::connect
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:89,1
    - Dst: TTcpChannel::with_stream
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:90,1
    - Dst: build
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:92,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - listen_address
    - protocol
    argTypes:
    - A
    - '&str'
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 4
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: bind
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 3
    functionsReached:
    - TTcpChannel::with_stream
    - TcpStream::connect
    - build
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn bind<A: ToSocketAddrs>(listen_address: A, protocol: &str) -> Result<IoProtocol,
      thrift::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: UnixStream::connect
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:98,1
    - Dst: build
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:100,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - domain_socket
    - protocol
    argTypes:
    - P
    - '&str'
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 4
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: bind_uds
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 0
    functionsReached:
    - UnixStream::connect
    - build
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn bind_uds<P: AsRef<Path>>(domain_socket: P, protocol: &str) -> Result<IoProtocol,
      thrift::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:108,1
    - Dst: TFramedReadTransport::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:111,1
    - Dst: TFramedWriteTransport::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:112,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:117,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:117,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:118,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:118,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:121,1
    - Dst: TCompactInputProtocol::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:121,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:122,1
    - Dst: TCompactOutputProtocol::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:122,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:124,1
    - Dst: into
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:124,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 2
    argNames:
    - channel
    - protocol
    argTypes:
    - C
    - '&str'
    constantsTouched: []
    func_position:
      end: 128
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 128
    functionName: build
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 11
    functionsReached:
    - TBinaryInputProtocol::new
    - TCompactOutputProtocol::new
    - TFramedReadTransport::new
    - into
    - Box::new
    - Err
    - Ok
    - TBinaryOutputProtocol::new
    - split
    - TFramedWriteTransport::new
    - TCompactInputProtocol::new
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn build<C: TIoChannel + ''static>(channel: C,protocol: &str,) ->
      thrift::Result<(Box<dyn TInputProtocol>, Box<dyn TOutputProtocol>)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut BuildThriftTestClient::test_void'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:226,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:229,1
    - Dst: '&mut BuildThriftTestClient::test_string'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:230,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:230,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:231,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:235,1
    - Dst: '&mut BuildThriftTestClient::test_uuid'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:236,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:241,1
    - Dst: '&mut BuildThriftTestClient::test_bool'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:241,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:244,1
    - Dst: '&mut BuildThriftTestClient::test_bool'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:244,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:247,1
    - Dst: '&mut BuildThriftTestClient::test_byte'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:247,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:250,1
    - Dst: '&mut BuildThriftTestClient::test_i32'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:250,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:255,1
    - Dst: '&mut BuildThriftTestClient::test_i64'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:255,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:258,1
    - Dst: '&mut BuildThriftTestClient::test_double'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:259,1
    - Dst: OrderedFloat::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:259,1
    - Dst: OrderedFloat::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:260,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:267,1
    - Dst: '&mut BuildThriftTestClient::test_typedef'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:267,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:272,1
    - Dst: '&mut BuildThriftTestClient::test_enum'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:272,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:279,1
    - Dst: '&mut BuildThriftTestClient::test_binary'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:279,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:285,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:285,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:286,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:287,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:288,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:291,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:291,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:292,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:293,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:294,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:296,1
    - Dst: '&mut BuildThriftTestClient::test_struct'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:296,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:315,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:316,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:317,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:317,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:318,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:319,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:320,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:322,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:325,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:326,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:327,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:327,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:328,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:329,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:330,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:332,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:334,1
    - Dst: '&mut BuildThriftTestClient::test_nest'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:334,1
    - Dst: '&mut Option<BuiltSecondServiceClient>::as_mut'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:338,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:341,1
    - Dst: thrift::Result::secondtest_string
      Src: /src/thrift/test/rs/src/bin/test_client.rs:342,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:342,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:343,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:354,1
    - Dst: '&mut BuildThriftTestClient::test_list'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:354,1
    - Dst: BTreeSet::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:359,1
    - Dst: BTreeSet::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:361,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:363,1
    - Dst: '&mut BuildThriftTestClient::test_set'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:363,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:368,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:370,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:372,1
    - Dst: '&mut BuildThriftTestClient::test_map'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:372,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:377,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:378,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:378,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:379,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:379,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:380,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:380,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:383,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:384,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:384,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:385,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:385,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:386,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:386,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:389,1
    - Dst: '&mut BuildThriftTestClient::test_string_map'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:389,1
    - Dst: map
      Src: /src/thrift/test/rs/src/bin/test_client.rs:397,1
    - Dst: collect
      Src: /src/thrift/test/rs/src/bin/test_client.rs:397,1
    - Dst: map
      Src: /src/thrift/test/rs/src/bin/test_client.rs:398,1
    - Dst: collect
      Src: /src/thrift/test/rs/src/bin/test_client.rs:398,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:401,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:403,1
    - Dst: '&mut BuildThriftTestClient::test_map_map'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:403,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:409,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:409,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:409,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:412,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:412,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:413,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:414,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:415,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:418,1
    - Dst: '&mut BuildThriftTestClient::test_multi'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:419,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:433,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:457,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:458,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:460,1
    - Dst: thrift::Result::clone
      Src: /src/thrift/test/rs/src/bin/test_client.rs:461,1
    - Dst: thrift::Result::clone
      Src: /src/thrift/test/rs/src/bin/test_client.rs:462,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:466,1
    - Dst: BTreeMap::new
      Src: /src/thrift/test/rs/src/bin/test_client.rs:466,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:467,1
    - Dst: Vec::new
      Src: /src/thrift/test/rs/src/bin/test_client.rs:467,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:470,1
    - Dst: BTreeMap::from
      Src: /src/thrift/test/rs/src/bin/test_client.rs:473,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:475,1
    - Dst: '&mut BuildThriftTestClient::test_insanity'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:475,1
    - Dst: '&mut BuildThriftTestClient::test_exception'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:480,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:480,1
    - Dst: downcast_ref::<Xception>
      Src: /src/thrift/test/rs/src/bin/test_client.rs:482,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:483,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:484,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:484,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:485,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:488,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:488,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:488,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:492,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:493,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:493,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:496,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:496,1
    - Dst: '&mut BuildThriftTestClient::test_exception'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:501,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:501,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:505,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:507,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:507,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:507,1
    - Dst: '&mut BuildThriftTestClient::test_exception'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:513,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:513,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:515,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:516,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:516,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:516,1
    - Dst: '&mut BuildThriftTestClient::test_multi_exception'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:523,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:523,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:523,1
    - Dst: downcast_ref::<Xception>
      Src: /src/thrift/test/rs/src/bin/test_client.rs:525,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:526,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:527,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:527,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:528,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:531,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:531,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:531,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:535,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:536,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:536,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:539,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:539,1
    - Dst: '&mut BuildThriftTestClient::test_multi_exception'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:545,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:545,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:545,1
    - Dst: downcast_ref::<Xception2>
      Src: /src/thrift/test/rs/src/bin/test_client.rs:547,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:548,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:549,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:549,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:550,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:553,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:553,1
    - Dst: '&str::into'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:553,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:557,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:558,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:559,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:559,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:561,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:563,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:565,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:569,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:569,1
    - Dst: '&mut BuildThriftTestClient::test_multi_exception'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:574,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:574,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:574,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:576,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:576,1
    - Dst: into
      Src: /src/thrift/test/rs/src/bin/test_client.rs:577,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:583,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:583,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:585,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:587,1
    - Dst: Some
      Src: /src/thrift/test/rs/src/bin/test_client.rs:589,1
    - Dst: verify_expected_result
      Src: /src/thrift/test/rs/src/bin/test_client.rs:592,1
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:592,1
    - Dst: '&mut BuildThriftTestClient::test_oneway'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:597,1
    - Dst: '&mut BuildThriftTestClient::test_void'
      Src: /src/thrift/test/rs/src/bin/test_client.rs:602,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 473
    argCount: 2
    argNames:
    - thrift_test_client
    - second_service_client
    argTypes:
    - '&mut BuildThriftTestClient'
    - '&mut Option<BuiltSecondServiceClient>'
    constantsTouched: []
    func_position:
      end: 603
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 603
    functionName: make_thrift_calls
    functionSourceFile: /src/thrift/test/rs/src/bin/test_client.rs
    functionUses: 0
    functionsReached:
    - Vec::new
    - '&mut BuildThriftTestClient::test_binary'
    - '&mut BuildThriftTestClient::test_double'
    - '&mut BuildThriftTestClient::test_map'
    - thrift::Result::clone
    - '&mut BuildThriftTestClient::test_multi_exception'
    - BTreeMap::from
    - '&mut BuildThriftTestClient::test_string_map'
    - '&mut BuildThriftTestClient::test_set'
    - collect
    - '&mut BuildThriftTestClient::test_multi'
    - thrift::Result::secondtest_string
    - Err
    - thrift::Error::User
    - '&mut BuildThriftTestClient::test_list'
    - '&mut BuildThriftTestClient::test_nest'
    - '&mut Option<BuiltSecondServiceClient>::as_mut'
    - '&str::into'
    - downcast_ref::<Xception>
    - '&mut BuildThriftTestClient::test_struct'
    - '&mut BuildThriftTestClient::test_uuid'
    - '&mut BuildThriftTestClient::test_typedef'
    - Some
    - verify_expected_result
    - '&mut BuildThriftTestClient::test_void'
    - OrderedFloat::from
    - '&mut BuildThriftTestClient::test_i32'
    - '&str::to_owned'
    - BTreeMap::new
    - downcast_ref::<Xception2>
    - '&mut BuildThriftTestClient::test_bool'
    - '&mut BuildThriftTestClient::test_insanity'
    - '&mut BuildThriftTestClient::test_byte'
    - BTreeSet::from
    - '&mut BuildThriftTestClient::test_enum'
    - '&mut BuildThriftTestClient::test_exception'
    - into
    - Ok
    - '&mut BuildThriftTestClient::test_map_map'
    - '&mut BuildThriftTestClient::test_string'
    - '&mut BuildThriftTestClient::test_i64'
    - map
    - '&mut BuildThriftTestClient::test_oneway'
    linkageType: ''
    returnType: Result
    signature: 'fn make_thrift_calls(thrift_test_client: &mut BuildThriftTestClient,second_service_client:
      &mut Option<BuiltSecondServiceClient>,) -> Result<(), thrift::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/test/rs/src/bin/test_client.rs:615,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:618,1
    - Dst: thrift::Error::User
      Src: /src/thrift/test/rs/src/bin/test_client.rs:618,1
    - Dst: into
      Src: /src/thrift/test/rs/src/bin/test_client.rs:619,1
    - Dst: Err
      Src: /src/thrift/test/rs/src/bin/test_client.rs:623,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - actual
    - expected
    argTypes:
    - Result<T, thrift::Error>
    - T
    constantsTouched: []
    func_position:
      end: 625
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 625
    functionName: verify_expected_result
    functionSourceFile: /src/thrift/test/rs/src/bin/test_client.rs
    functionUses: 1
    functionsReached:
    - into
    - Err
    - Ok
    - thrift::Error::User
    linkageType: ''
    returnType: Result
    signature: 'fn verify_expected_result<T: Debug + PartialEq + Sized>(actual: Result<T,
      thrift::Error>,expected: T,) -> Result<(), thrift::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F1::into
      Src: /src/thrift/tutorial/rs/src/shared.rs:42,1
    - Dst: BTreeMap::into
      Src: /src/thrift/tutorial/rs/src/shared.rs:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - key
    - value
    argTypes:
    - F1
    - F2
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: SharedStruct::new
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 1
    functionsReached:
    - F1::into
    - BTreeMap::into
    linkageType: ''
    returnType: SharedStruct
    signature: 'pub fn new<F1, F2>(key: F1, value: F2) -> SharedStruct where F1: Into<Option<i32>>,
      F2: Into<Option<String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:50,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/shared.rs:51,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/shared.rs:52,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/shared.rs:52,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:54,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/shared.rs:58,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/shared.rs:61,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/shared.rs:62,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/tutorial/rs/src/shared.rs:65,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/shared.rs:66,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/shared.rs:69,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:72,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:74,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/shared.rs:79,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 80
      start: 49
    functionDepth: 4
    functionLinenumber: 49
    functionLinenumberEnd: 80
    functionName: SharedStruct::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&str::to_owned'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<SharedStruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:82,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:83,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:85,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:85,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/shared.rs:86,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:87,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:90,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:90,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/tutorial/rs/src/shared.rs:91,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:92,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/shared.rs:94,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:95,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 96
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 96
    functionName: SharedStruct::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_string'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - input_protocol
    - output_protocol
    argTypes:
    - IP
    - OP
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: SharedServiceSyncClient::new
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SharedServiceSyncClient
    signature: 'pub fn new(input_protocol: IP, output_protocol: OP) -> SharedServiceSyncClient<IP,
      OP>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: SharedServiceSyncClient::i_prot_mut
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut dyn TInputProtocol'
    signature: fn i_prot_mut(&mut self) -> &mut dyn TInputProtocol
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 123
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 123
    functionName: SharedServiceSyncClient::o_prot_mut
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut dyn TOutputProtocol'
    signature: fn o_prot_mut(&mut self) -> &mut dyn TOutputProtocol
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 124
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 124
    functionName: SharedServiceSyncClient::sequence_number
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: fn sequence_number(&self) -> i32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: SharedServiceSyncClient::increment_sequence_number
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: fn increment_sequence_number(&mut self) -> i32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::increment_sequence_number
      Src: /src/thrift/tutorial/rs/src/shared.rs:134,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:135,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/shared.rs:135,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:137,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:137,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:138,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:138,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:139,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:139,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:140,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/shared.rs:140,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:144,1
    - Dst: '&mut dyn TInputProtocol::read_message_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:144,1
    - Dst: thrift::protocol::verify_expected_sequence_number
      Src: /src/thrift/tutorial/rs/src/shared.rs:145,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/shared.rs:145,1
    - Dst: thrift::protocol::verify_expected_service_call
      Src: /src/thrift/tutorial/rs/src/shared.rs:146,1
    - Dst: thrift::Error::read_application_error_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:148,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:148,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:149,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:149,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/shared.rs:150,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/shared.rs:150,1
    - Dst: thrift::protocol::verify_expected_message_type
      Src: /src/thrift/tutorial/rs/src/shared.rs:152,1
    - Dst: SharedServiceGetStructResult::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:153,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:153,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/shared.rs:154,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:154,1
    - Dst: Result::ok_or
      Src: /src/thrift/tutorial/rs/src/shared.rs:155,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 83
    argCount: 1
    argNames:
    - key
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 157
      start: 131
    functionDepth: 6
    functionLinenumber: 131
    functionLinenumberEnd: 157
    functionName: C::get_struct
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached:
    - thrift::protocol::verify_expected_service_call
    - '&mut dyn TOutputProtocol::write_message_end'
    - '&mut dyn TOutputProtocol::write_message_begin'
    - '&mut dyn TOutputProtocol::flush'
    - thrift::Error::Application
    - thrift::protocol::verify_expected_message_type
    - Err
    - TMessageIdentifier::new
    - write_to_out_protocol
    - thrift::protocol::verify_expected_sequence_number
    - C::o_prot_mut
    - C::increment_sequence_number
    - Result::ok_or
    - SharedServiceGetStructResult::read_from_in_protocol
    - '&mut dyn TInputProtocol::read_message_end'
    - thrift::Error::read_application_error_from_in_protocol
    - C::sequence_number
    - '&mut dyn TInputProtocol::read_message_begin'
    - C::i_prot_mut
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn get_struct(&mut self, key: i32) -> thrift::Result<SharedStruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - handler
    argTypes:
    - H
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: SharedServiceSyncProcessor::new
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SharedServiceSyncProcessor
    signature: 'pub fn new(handler: H) -> SharedServiceSyncProcessor<H>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TSharedServiceProcessFunctions::process_get_struct
      Src: /src/thrift/tutorial/rs/src/shared.rs:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 6
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: SharedServiceSyncProcessor::process_get_struct
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 1
    functionsReached:
    - TSharedServiceProcessFunctions::process_get_struct
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process_get_struct(&self, incoming_sequence_number: i32, i_prot:
      &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SharedServiceGetStructArgs::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:187,1
    - Dst: '&H::handle_get_struct'
      Src: /src/thrift/tutorial/rs/src/shared.rs:188,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:190,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:191,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/shared.rs:192,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:193,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:194,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/shared.rs:195,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:200,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:201,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:202,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:203,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/shared.rs:204,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:208,1
    - Dst: thrift::Result::to_string
      Src: /src/thrift/tutorial/rs/src/shared.rs:210,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:213,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:214,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:215,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:216,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/shared.rs:217,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 62
    argCount: 4
    argNames:
    - handler
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - '&H'
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 222
      start: 186
    functionDepth: 5
    functionLinenumber: 186
    functionLinenumberEnd: 222
    functionName: TSharedServiceProcessFunctions::process_get_struct
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 2
    functionsReached:
    - Some
    - thrift::Result::to_string
    - '&mut dyn TOutputProtocol::flush'
    - '&mut dyn TOutputProtocol::write_message_end'
    - SharedServiceGetStructArgs::read_from_in_protocol
    - thrift::Error::write_application_error_to_out_protocol
    - '&mut dyn TOutputProtocol::write_message_begin'
    - '&H::handle_get_struct'
    - TMessageIdentifier::new
    - write_to_out_protocol
    - ApplicationError::new
    linkageType: ''
    returnType: thrift::Result
    signature: 'pub fn process_get_struct<H: SharedServiceSyncHandler>(handler: &H,
      incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut
      dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_message_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:227,1
    - Dst: SharedServiceSyncProcessor::process_get_struct
      Src: /src/thrift/tutorial/rs/src/shared.rs:230,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/shared.rs:233,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/shared.rs:234,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:235,1
    - Dst: thrift::server::handle_process_result
      Src: /src/thrift/tutorial/rs/src/shared.rs:243,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - i_prot
    - o_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 244
      start: 226
    functionDepth: 7
    functionLinenumber: 226
    functionLinenumberEnd: 244
    functionName: SharedServiceSyncProcessor::process
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached:
    - thrift::Error::Application
    - '&mut dyn TInputProtocol::read_message_begin'
    - Err
    - ApplicationError::new
    - thrift::server::handle_process_result
    - SharedServiceSyncProcessor::process_get_struct
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process(&self, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn
      TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:258,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:261,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/shared.rs:265,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/shared.rs:268,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/shared.rs:269,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/shared.rs:272,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:275,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:277,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/tutorial/rs/src/shared.rs:278,1
    - Dst: None::expect
      Src: /src/thrift/tutorial/rs/src/shared.rs:280,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/shared.rs:282,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 283
      start: 257
    functionDepth: 4
    functionLinenumber: 257
    functionLinenumberEnd: 283
    functionName: SharedServiceGetStructArgs::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_i32'
    - None::expect
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - thrift::protocol::verify_required_field_exists
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<SharedServiceGetStructArgs>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:285,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:286,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:287,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:287,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/shared.rs:288,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:289,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/shared.rs:290,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:291,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 292
      start: 284
    functionDepth: 2
    functionLinenumber: 284
    functionLinenumberEnd: 292
    functionName: SharedServiceGetStructArgs::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/thrift/tutorial/rs/src/shared.rs:306,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/shared.rs:307,1
    - Dst: unwrap
      Src: /src/thrift/tutorial/rs/src/shared.rs:307,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/shared.rs:309,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/shared.rs:310,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 318
      start: 305
    functionDepth: 1
    functionLinenumber: 305
    functionLinenumberEnd: 318
    functionName: SharedServiceGetStructResult::ok_or
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached:
    - is_some
    - thrift::Error::Application
    - Err
    - Ok
    - ApplicationError::new
    - unwrap
    linkageType: ''
    returnType: thrift::Result
    signature: fn ok_or(self) -> thrift::Result<SharedStruct>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:320,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:323,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/shared.rs:327,1
    - Dst: SharedStruct::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:330,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/shared.rs:331,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/shared.rs:334,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:337,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:339,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/shared.rs:343,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 344
      start: 319
    functionDepth: 5
    functionLinenumber: 319
    functionLinenumberEnd: 344
    functionName: SharedServiceGetStructResult::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 1
    functionsReached:
    - Some
    - SharedStruct::read_from_in_protocol
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<SharedServiceGetStructResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:346,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:347,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/shared.rs:349,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/shared.rs:349,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/shared.rs:350,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:351,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/shared.rs:353,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/shared.rs:354,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 355
      start: 345
    functionDepth: 3
    functionLinenumber: 345
    functionLinenumberEnd: 355
    functionName: SharedServiceGetStructResult::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/shared.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - write_to_out_protocol
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: Operation::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_i32'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:55,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:56,1
    - Dst: Operation::from
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: Operation::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 2
    functionsReached:
    - Operation::from
    - Ok
    - '&mut dyn TInputProtocol::read_i32'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<Operation>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Operation::from
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - '&i32'
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: Operation::from
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 2
    functionsReached:
    - Operation::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(i: &i32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - e
    argTypes:
    - '&TestEnum'
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: i32::from
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: 'fn from(e: &TestEnum) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F1::into
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:114,1
    - Dst: F2::into
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:115,1
    - Dst: crate::Result::into
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:116,1
    - Dst: F4::into
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - num1
    - num2
    - op
    - comment
    argTypes:
    - F1
    - F2
    - F3
    - F4
    constantsTouched: []
    func_position:
      end: 119
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 119
    functionName: Work::new
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - F1::into
    - F4::into
    - crate::Result::into
    - F2::into
    linkageType: ''
    returnType: Work
    signature: 'pub fn new<F1, F2, F3, F4>(num1: F1, num2: F2, op: F3, comment: F4)
      -> Work where F1: Into<Option<i32>>, F2: Into<Option<i32>>, F3: Into<Option<Operation>>,
      F4: Into<Option<String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:124,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:125,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:126,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:130,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:134,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:137,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:138,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:141,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:142,1
    - Dst: Operation::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:145,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:146,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:149,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:150,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:153,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:156,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:158,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:165,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 60
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 166
      start: 123
    functionDepth: 4
    functionLinenumber: 123
    functionLinenumberEnd: 166
    functionName: Work::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - Operation::read_from_in_protocol
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<Work>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:168,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:169,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:171,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:171,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:172,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:173,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:176,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:176,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:177,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:178,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:181,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:181,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:182,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:183,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:186,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:186,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:187,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:188,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:190,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:191,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 76
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 192
      start: 167
    functionDepth: 3
    functionLinenumber: 167
    functionLinenumberEnd: 192
    functionName: Work::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_string'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - write_to_out_protocol
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F1::into
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:209,1
    - Dst: F2::into
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - what_op
    - why
    argTypes:
    - F1
    - F2
    constantsTouched: []
    func_position:
      end: 212
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 212
    functionName: InvalidOperation::new
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - F1::into
    - F2::into
    linkageType: ''
    returnType: InvalidOperation
    signature: 'pub fn new<F1, F2>(what_op: F1, why: F2) -> InvalidOperation where
      F1: Into<Option<i32>>, F2: Into<Option<String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:217,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:218,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:219,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:219,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:221,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:225,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:228,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:229,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:232,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:233,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:236,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:239,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:241,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:246,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 247
      start: 216
    functionDepth: 4
    functionLinenumber: 216
    functionLinenumberEnd: 247
    functionName: InvalidOperation::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&str::to_owned'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<InvalidOperation>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:249,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:250,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:252,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:252,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:253,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:254,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:257,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:257,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:258,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:259,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:261,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:262,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 263
      start: 248
    functionDepth: 2
    functionLinenumber: 248
    functionLinenumberEnd: 263
    functionName: InvalidOperation::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_string'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: thrift::Error::User
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:270,1
    - Dst: Box::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - e
    argTypes:
    - InvalidOperation
    constantsTouched: []
    func_position:
      end: 271
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionName: thrift::Error::from
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Box::new
    - thrift::Error::User
    linkageType: ''
    returnType: Self
    signature: 'fn from(e: InvalidOperation) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter'
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: InvalidOperation::fmt
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BTreeMap::from
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:285,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:287,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:288,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:291,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 295
      start: 284
    functionDepth: 2
    functionLinenumber: 284
    functionLinenumberEnd: 295
    functionName: ConstMAPCONSTANT::const_value
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - '&str::to_owned'
    - BTreeMap::from
    linkageType: ''
    returnType: BTreeMap
    signature: pub fn const_value() -> BTreeMap<String, String>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - input_protocol
    - output_protocol
    argTypes:
    - IP
    - OP
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: CalculatorSyncClient::new
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: CalculatorSyncClient
    signature: 'pub fn new(input_protocol: IP, output_protocol: OP) -> CalculatorSyncClient<IP,
      OP>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 333
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 333
    functionName: CalculatorSyncClient::i_prot_mut
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut dyn TInputProtocol'
    signature: fn i_prot_mut(&mut self) -> &mut dyn TInputProtocol
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 334
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 334
    functionName: CalculatorSyncClient::o_prot_mut
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut dyn TOutputProtocol'
    signature: fn o_prot_mut(&mut self) -> &mut dyn TOutputProtocol
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 335
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 335
    functionName: CalculatorSyncClient::sequence_number
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: fn sequence_number(&self) -> i32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 336
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 336
    functionName: CalculatorSyncClient::increment_sequence_number
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: fn increment_sequence_number(&mut self) -> i32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::increment_sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:346,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:347,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:347,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:349,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:349,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:350,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:350,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:351,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:351,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:352,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:352,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:356,1
    - Dst: '&mut dyn TInputProtocol::read_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:356,1
    - Dst: thrift::protocol::verify_expected_sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:357,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:357,1
    - Dst: thrift::protocol::verify_expected_service_call
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:358,1
    - Dst: thrift::Error::read_application_error_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:360,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:360,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:361,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:361,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:362,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:362,1
    - Dst: thrift::protocol::verify_expected_message_type
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:364,1
    - Dst: CalculatorPingResult::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:365,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:365,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:366,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:366,1
    - Dst: Result::ok_or
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:367,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 83
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 369
      start: 343
    functionDepth: 5
    functionLinenumber: 343
    functionLinenumberEnd: 369
    functionName: C::ping
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - thrift::protocol::verify_expected_service_call
    - '&mut dyn TOutputProtocol::write_message_end'
    - '&mut dyn TOutputProtocol::write_message_begin'
    - '&mut dyn TOutputProtocol::flush'
    - thrift::Error::Application
    - thrift::protocol::verify_expected_message_type
    - Err
    - TMessageIdentifier::new
    - write_to_out_protocol
    - thrift::protocol::verify_expected_sequence_number
    - C::o_prot_mut
    - CalculatorPingResult::read_from_in_protocol
    - C::increment_sequence_number
    - Result::ok_or
    - '&mut dyn TInputProtocol::read_message_end'
    - thrift::Error::read_application_error_from_in_protocol
    - C::sequence_number
    - '&mut dyn TInputProtocol::read_message_begin'
    - C::i_prot_mut
    linkageType: ''
    returnType: thrift::Result
    signature: fn ping(&mut self) -> thrift::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::increment_sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:373,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:374,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:374,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:376,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:376,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:377,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:377,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:378,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:378,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:379,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:379,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:383,1
    - Dst: '&mut dyn TInputProtocol::read_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:383,1
    - Dst: thrift::protocol::verify_expected_sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:384,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:384,1
    - Dst: thrift::protocol::verify_expected_service_call
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:385,1
    - Dst: thrift::Error::read_application_error_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:387,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:387,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:388,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:388,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:389,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:389,1
    - Dst: thrift::protocol::verify_expected_message_type
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:391,1
    - Dst: CalculatorAddResult::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:392,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:392,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:393,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:393,1
    - Dst: Result::ok_or
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:394,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 83
    argCount: 2
    argNames:
    - num1
    - num2
    argTypes:
    - i32
    - i32
    constantsTouched: []
    func_position:
      end: 396
      start: 370
    functionDepth: 5
    functionLinenumber: 370
    functionLinenumberEnd: 396
    functionName: C::add
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - thrift::protocol::verify_expected_service_call
    - '&mut dyn TOutputProtocol::write_message_end'
    - '&mut dyn TOutputProtocol::write_message_begin'
    - '&mut dyn TOutputProtocol::flush'
    - thrift::Error::Application
    - thrift::protocol::verify_expected_message_type
    - Err
    - TMessageIdentifier::new
    - write_to_out_protocol
    - thrift::protocol::verify_expected_sequence_number
    - C::o_prot_mut
    - C::increment_sequence_number
    - Result::ok_or
    - CalculatorAddResult::read_from_in_protocol
    - '&mut dyn TInputProtocol::read_message_end'
    - thrift::Error::read_application_error_from_in_protocol
    - C::sequence_number
    - '&mut dyn TInputProtocol::read_message_begin'
    - C::i_prot_mut
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn add(&mut self, num1: i32, num2: i32) -> thrift::Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::increment_sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:400,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:401,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:401,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:403,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:403,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:404,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:404,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:405,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:405,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:406,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:406,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:410,1
    - Dst: '&mut dyn TInputProtocol::read_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:410,1
    - Dst: thrift::protocol::verify_expected_sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:411,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:411,1
    - Dst: thrift::protocol::verify_expected_service_call
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:412,1
    - Dst: thrift::Error::read_application_error_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:414,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:414,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:415,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:415,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:416,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:416,1
    - Dst: thrift::protocol::verify_expected_message_type
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:418,1
    - Dst: CalculatorCalculateResult::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:419,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:419,1
    - Dst: C::i_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:420,1
    - Dst: '&mut dyn TInputProtocol::read_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:420,1
    - Dst: Result::ok_or
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:421,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 83
    argCount: 2
    argNames:
    - logid
    - w
    argTypes:
    - i32
    - Work
    constantsTouched: []
    func_position:
      end: 423
      start: 397
    functionDepth: 6
    functionLinenumber: 397
    functionLinenumberEnd: 423
    functionName: C::calculate
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - thrift::protocol::verify_expected_service_call
    - '&mut dyn TOutputProtocol::write_message_end'
    - '&mut dyn TOutputProtocol::write_message_begin'
    - '&mut dyn TOutputProtocol::flush'
    - thrift::Error::Application
    - thrift::protocol::verify_expected_message_type
    - Err
    - TMessageIdentifier::new
    - write_to_out_protocol
    - thrift::protocol::verify_expected_sequence_number
    - C::o_prot_mut
    - C::increment_sequence_number
    - Result::ok_or
    - CalculatorCalculateResult::read_from_in_protocol
    - '&mut dyn TInputProtocol::read_message_end'
    - thrift::Error::read_application_error_from_in_protocol
    - C::sequence_number
    - '&mut dyn TInputProtocol::read_message_begin'
    - C::i_prot_mut
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn calculate(&mut self, logid: i32, w: Work) -> thrift::Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::increment_sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:427,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:428,1
    - Dst: C::sequence_number
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:428,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:430,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:430,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:431,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:431,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:432,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:432,1
    - Dst: C::o_prot_mut
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:433,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:433,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:436,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 437
      start: 424
    functionDepth: 3
    functionLinenumber: 424
    functionLinenumberEnd: 437
    functionName: C::zip
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - C::increment_sequence_number
    - '&mut dyn TOutputProtocol::flush'
    - C::sequence_number
    - '&mut dyn TOutputProtocol::write_message_end'
    - Ok
    - '&mut dyn TOutputProtocol::write_message_begin'
    - TMessageIdentifier::new
    - write_to_out_protocol
    - C::o_prot_mut
    linkageType: ''
    returnType: thrift::Result
    signature: fn zip(&mut self) -> thrift::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - handler
    argTypes:
    - H
    constantsTouched: []
    func_position:
      end: 469
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 469
    functionName: CalculatorSyncProcessor::new
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CalculatorSyncProcessor
    signature: 'pub fn new(handler: H) -> CalculatorSyncProcessor<H>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCalculatorProcessFunctions::process_ping
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 472
      start: 470
    functionDepth: 6
    functionLinenumber: 470
    functionLinenumberEnd: 472
    functionName: CalculatorSyncProcessor::process_ping
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - TCalculatorProcessFunctions::process_ping
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process_ping(&self, incoming_sequence_number: i32, i_prot: &mut
      dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCalculatorProcessFunctions::process_add
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 475
      start: 473
    functionDepth: 6
    functionLinenumber: 473
    functionLinenumberEnd: 475
    functionName: CalculatorSyncProcessor::process_add
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - TCalculatorProcessFunctions::process_add
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process_add(&self, incoming_sequence_number: i32, i_prot: &mut
      dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCalculatorProcessFunctions::process_calculate
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 478
      start: 476
    functionDepth: 7
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionName: CalculatorSyncProcessor::process_calculate
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - TCalculatorProcessFunctions::process_calculate
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process_calculate(&self, incoming_sequence_number: i32, i_prot:
      &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCalculatorProcessFunctions::process_zip
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 481
      start: 479
    functionDepth: 6
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionName: CalculatorSyncProcessor::process_zip
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - TCalculatorProcessFunctions::process_zip
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process_zip(&self, incoming_sequence_number: i32, i_prot: &mut
      dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: shared::TSharedServiceProcessFunctions::process_get_struct
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 484
      start: 482
    functionDepth: 6
    functionLinenumber: 482
    functionLinenumberEnd: 484
    functionName: CalculatorSyncProcessor::process_get_struct
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - shared::TSharedServiceProcessFunctions::process_get_struct
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process_get_struct(&self, incoming_sequence_number: i32, i_prot:
      &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CalculatorPingArgs::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:491,1
    - Dst: '&H::handle_ping'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:492,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:494,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:495,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:497,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:498,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:499,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:504,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:505,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:506,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:507,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:508,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:512,1
    - Dst: thrift::Result::to_string
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:514,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:517,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:518,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:519,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:520,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:521,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 60
    argCount: 4
    argNames:
    - handler
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - '&H'
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 526
      start: 490
    functionDepth: 5
    functionLinenumber: 490
    functionLinenumberEnd: 526
    functionName: TCalculatorProcessFunctions::process_ping
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - CalculatorPingArgs::read_from_in_protocol
    - thrift::Result::to_string
    - '&mut dyn TOutputProtocol::flush'
    - '&mut dyn TOutputProtocol::write_message_end'
    - thrift::Error::write_application_error_to_out_protocol
    - '&mut dyn TOutputProtocol::write_message_begin'
    - TMessageIdentifier::new
    - write_to_out_protocol
    - '&H::handle_ping'
    - ApplicationError::new
    linkageType: ''
    returnType: thrift::Result
    signature: 'pub fn process_ping<H: CalculatorSyncHandler>(handler: &H, incoming_sequence_number:
      i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CalculatorAddArgs::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:528,1
    - Dst: '&H::handle_add'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:529,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:531,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:532,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:533,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:534,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:535,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:536,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:541,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:542,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:543,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:544,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:545,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:549,1
    - Dst: thrift::Result::to_string
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:551,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:554,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:555,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:556,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:557,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:558,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 63
    argCount: 4
    argNames:
    - handler
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - '&H'
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 563
      start: 527
    functionDepth: 5
    functionLinenumber: 527
    functionLinenumberEnd: 563
    functionName: TCalculatorProcessFunctions::process_add
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Some
    - thrift::Result::to_string
    - '&H::handle_add'
    - '&mut dyn TOutputProtocol::flush'
    - '&mut dyn TOutputProtocol::write_message_end'
    - thrift::Error::write_application_error_to_out_protocol
    - '&mut dyn TOutputProtocol::write_message_begin'
    - TMessageIdentifier::new
    - write_to_out_protocol
    - ApplicationError::new
    - CalculatorAddArgs::read_from_in_protocol
    linkageType: ''
    returnType: thrift::Result
    signature: 'pub fn process_add<H: CalculatorSyncHandler>(handler: &H, incoming_sequence_number:
      i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CalculatorCalculateArgs::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:565,1
    - Dst: '&H::handle_calculate'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:566,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:568,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:569,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:570,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:571,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:572,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:573,1
    - Dst: downcast_ref::<InvalidOperation>
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:578,1
    - Dst: is_some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:578,1
    - Dst: downcast::<InvalidOperation>
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:579,1
    - Dst: expect
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:579,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:580,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:581,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:582,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:583,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:584,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:585,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:588,1
    - Dst: to_string
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:590,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:593,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:594,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:595,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:596,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:597,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:601,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:602,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:603,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:604,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:605,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:609,1
    - Dst: thrift::Result::to_string
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:611,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:614,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:615,1
    - Dst: thrift::Error::write_application_error_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:616,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:617,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:618,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 111
    argCount: 4
    argNames:
    - handler
    - incoming_sequence_number
    - i_prot
    - o_prot
    argTypes:
    - '&H'
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 623
      start: 564
    functionDepth: 6
    functionLinenumber: 564
    functionLinenumberEnd: 623
    functionName: TCalculatorProcessFunctions::process_calculate
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - to_string
    - '&H::handle_calculate'
    - is_some
    - Some
    - CalculatorCalculateArgs::read_from_in_protocol
    - '&mut dyn TOutputProtocol::flush'
    - thrift::Result::to_string
    - '&mut dyn TOutputProtocol::write_message_end'
    - downcast_ref::<InvalidOperation>
    - '&mut dyn TOutputProtocol::write_message_begin'
    - thrift::Error::write_application_error_to_out_protocol
    - TMessageIdentifier::new
    - expect
    - write_to_out_protocol
    - ApplicationError::new
    - downcast::<InvalidOperation>
    linkageType: ''
    returnType: thrift::Result
    signature: 'pub fn process_calculate<H: CalculatorSyncHandler>(handler: &H, incoming_sequence_number:
      i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CalculatorZipArgs::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:625,1
    - Dst: '&H::handle_zip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:626,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:628,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:633,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:633,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:637,1
    - Dst: thrift::Result::to_string
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:639,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:642,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:642,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 4
    argNames:
    - handler
    - i_prot
    argTypes:
    - '&H'
    - i32
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 647
      start: 624
    functionDepth: 5
    functionLinenumber: 624
    functionLinenumberEnd: 647
    functionName: TCalculatorProcessFunctions::process_zip
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - thrift::Result::to_string
    - thrift::Error::Application
    - '&H::handle_zip'
    - Err
    - Ok
    - ApplicationError::new
    - CalculatorZipArgs::read_from_in_protocol
    linkageType: ''
    returnType: thrift::Result
    signature: 'pub fn process_zip<H: CalculatorSyncHandler>(handler: &H, _: i32,
      i_prot: &mut dyn TInputProtocol, _: &mut dyn TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_message_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:652,1
    - Dst: CalculatorSyncProcessor::process_ping
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:655,1
    - Dst: CalculatorSyncProcessor::process_add
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:658,1
    - Dst: CalculatorSyncProcessor::process_calculate
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:661,1
    - Dst: CalculatorSyncProcessor::process_zip
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:664,1
    - Dst: CalculatorSyncProcessor::process_get_struct
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:667,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:670,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:671,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:672,1
    - Dst: thrift::server::handle_process_result
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:680,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - i_prot
    - o_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 681
      start: 651
    functionDepth: 7
    functionLinenumber: 651
    functionLinenumberEnd: 681
    functionName: CalculatorSyncProcessor::process
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - CalculatorSyncProcessor::process_add
    - CalculatorSyncProcessor::process_zip
    - CalculatorSyncProcessor::process_ping
    - thrift::Error::Application
    - '&mut dyn TInputProtocol::read_message_begin'
    - CalculatorSyncProcessor::process_calculate
    - Err
    - CalculatorSyncProcessor::process_get_struct
    - ApplicationError::new
    - thrift::server::handle_process_result
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn process(&self, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn
      TOutputProtocol) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:694,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:696,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:700,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:701,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:703,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:705,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 706
      start: 693
    functionDepth: 4
    functionLinenumber: 693
    functionLinenumberEnd: 706
    functionName: CalculatorPingArgs::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - '&mut dyn TInputProtocol::read_struct_end'
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<CalculatorPingArgs>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:708,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:709,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:710,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:711,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 712
      start: 707
    functionDepth: 2
    functionLinenumber: 707
    functionLinenumberEnd: 712
    functionName: CalculatorPingArgs::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_struct_end'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 726
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 726
    functionName: CalculatorPingResult::ok_or
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn ok_or(self) -> thrift::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:728,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:730,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:734,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:735,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:737,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:739,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 740
      start: 727
    functionDepth: 4
    functionLinenumber: 727
    functionLinenumberEnd: 740
    functionName: CalculatorPingResult::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - '&mut dyn TInputProtocol::read_struct_end'
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<CalculatorPingResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:742,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:743,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:744,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:745,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 746
      start: 741
    functionDepth: 2
    functionLinenumber: 741
    functionLinenumberEnd: 746
    functionName: CalculatorPingResult::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_struct_end'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:761,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:765,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:769,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:772,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:773,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:776,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:777,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:780,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:783,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:785,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:786,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:787,1
    - Dst: None::expect
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:789,1
    - Dst: None::expect
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:790,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:792,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 59
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 793
      start: 760
    functionDepth: 4
    functionLinenumber: 760
    functionLinenumberEnd: 793
    functionName: CalculatorAddArgs::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_i32'
    - None::expect
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - thrift::protocol::verify_required_field_exists
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<CalculatorAddArgs>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:795,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:796,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:797,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:797,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:798,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:799,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:800,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:800,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:801,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:802,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:803,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:804,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 805
      start: 794
    functionDepth: 2
    functionLinenumber: 794
    functionLinenumberEnd: 805
    functionName: CalculatorAddArgs::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:819,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:820,1
    - Dst: unwrap
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:820,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:822,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:823,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:824,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 831
      start: 818
    functionDepth: 1
    functionLinenumber: 818
    functionLinenumberEnd: 831
    functionName: CalculatorAddResult::ok_or
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - is_some
    - thrift::Error::Application
    - Err
    - Ok
    - ApplicationError::new
    - unwrap
    linkageType: ''
    returnType: thrift::Result
    signature: fn ok_or(self) -> thrift::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:833,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:836,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:840,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:843,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:844,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:847,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:850,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:852,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:856,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 857
      start: 832
    functionDepth: 4
    functionLinenumber: 832
    functionLinenumberEnd: 857
    functionName: CalculatorAddResult::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<CalculatorAddResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:859,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:860,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:862,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:862,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:863,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:864,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:866,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:867,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 868
      start: 858
    functionDepth: 2
    functionLinenumber: 858
    functionLinenumberEnd: 868
    functionName: CalculatorAddResult::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:883,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:887,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:891,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:894,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:895,1
    - Dst: Work::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:898,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:899,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:902,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:905,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:907,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:908,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:909,1
    - Dst: None::expect
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:911,1
    - Dst: None::expect
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:912,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:914,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 915
      start: 882
    functionDepth: 5
    functionLinenumber: 882
    functionLinenumberEnd: 915
    functionName: CalculatorCalculateArgs::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Work::read_from_in_protocol
    - Some
    - '&mut dyn TInputProtocol::read_i32'
    - None::expect
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - thrift::protocol::verify_required_field_exists
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<CalculatorCalculateArgs>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:917,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:918,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:919,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:919,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:920,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:921,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:922,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:922,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:923,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:924,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:925,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:926,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 927
      start: 916
    functionDepth: 3
    functionLinenumber: 916
    functionLinenumberEnd: 927
    functionName: CalculatorCalculateArgs::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - write_to_out_protocol
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:942,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:943,1
    - Dst: thrift::Error::User
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:943,1
    - Dst: Box::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:943,1
    - Dst: unwrap
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:943,1
    - Dst: is_some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:944,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:945,1
    - Dst: unwrap
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:945,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:947,1
    - Dst: thrift::Error::Application
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:948,1
    - Dst: ApplicationError::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:949,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 956
      start: 941
    functionDepth: 1
    functionLinenumber: 941
    functionLinenumberEnd: 956
    functionName: CalculatorCalculateResult::ok_or
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - is_some
    - thrift::Error::Application
    - Box::new
    - Err
    - thrift::Error::User
    - Ok
    - ApplicationError::new
    - unwrap
    linkageType: ''
    returnType: thrift::Result
    signature: fn ok_or(self) -> thrift::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:958,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:962,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:966,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:969,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:970,1
    - Dst: InvalidOperation::read_from_in_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:973,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:974,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:977,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:980,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:982,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:987,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 988
      start: 957
    functionDepth: 5
    functionLinenumber: 957
    functionLinenumberEnd: 988
    functionName: CalculatorCalculateResult::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - InvalidOperation::read_from_in_protocol
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<CalculatorCalculateResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:990,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:991,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:993,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:993,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:994,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:995,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:998,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:998,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:999,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1000,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1002,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1003,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 1004
      start: 989
    functionDepth: 3
    functionLinenumber: 989
    functionLinenumberEnd: 1004
    functionName: CalculatorCalculateResult::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - write_to_out_protocol
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1017,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1019,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1023,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1024,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1026,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1028,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 1029
      start: 1016
    functionDepth: 4
    functionLinenumber: 1016
    functionLinenumberEnd: 1029
    functionName: CalculatorZipArgs::read_from_in_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 1
    functionsReached:
    - '&mut dyn TInputProtocol::read_struct_end'
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<CalculatorZipArgs>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1031,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1032,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1033,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/tutorial/rs/src/tutorial.rs:1034,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 1035
      start: 1030
    functionDepth: 2
    functionLinenumber: 1030
    functionLinenumberEnd: 1035
    functionName: CalculatorZipArgs::write_to_out_protocol
    functionSourceFile: /src/thrift/tutorial/rs/src/tutorial.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_struct_end'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TTcpChannel::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:106,1
    - Dst: thrift::Result::open
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:110,1
    - Dst: thrift::Result::split
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:114,1
    - Dst: TFramedReadTransport::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:117,1
    - Dst: TFramedWriteTransport::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:118,1
    - Dst: TCompactInputProtocol::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:121,1
    - Dst: TCompactOutputProtocol::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:122,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:125,1
    - Dst: CalculatorSyncClient::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs:125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - host
    - port
    argTypes:
    - '&str'
    - u16
    constantsTouched: []
    func_position:
      end: 126
      start: 102
    functionDepth: 3
    functionLinenumber: 102
    functionLinenumberEnd: 126
    functionName: new_client
    functionSourceFile: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs
    functionUses: 0
    functionsReached:
    - TCompactOutputProtocol::new
    - TFramedReadTransport::new
    - TTcpChannel::new
    - thrift::Result::open
    - Ok
    - CalculatorSyncClient::new
    - TFramedWriteTransport::new
    - TCompactInputProtocol::new
    - thrift::Result::split
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn new_client(host: &str,port: u16,) -> thrift::Result<CalculatorSyncClient<ClientInputProtocol,
      ClientOutputProtocol>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Mutex::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:89,1
    - Dst: HashMap::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 91
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionName: CalculatorServer::default
    functionSourceFile: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs
    functionUses: 0
    functionsReached:
    - Mutex::new
    - HashMap::new
    linkageType: ''
    returnType: CalculatorServer
    signature: fn default() -> CalculatorServer
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: lock
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:101,1
    - Dst: unwrap
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:101,1
    - Dst: get
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:102,1
    - Dst: cloned
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:102,1
    - Dst: ok_or_else
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:102,1
    - Dst: into
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - key
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 105
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 105
    functionName: CalculatorServer::handle_get_struct
    functionSourceFile: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs
    functionUses: 0
    functionsReached:
    - cloned
    - into
    - lock
    - ok_or_else
    - get
    - unwrap
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_get_struct(&self, key: i32) -> thrift::Result<SharedStruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: CalculatorServer::handle_ping
    functionSourceFile: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_ping(&self) -> thrift::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - num1
    - num2
    argTypes:
    - i32
    - i32
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: CalculatorServer::handle_add
    functionSourceFile: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_add(&self, num1: i32, num2: i32) -> thrift::Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_none
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:124,1
    - Dst: is_none
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:124,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:125,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:126,1
    - Dst: crate::Result::into
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:126,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:127,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:127,1
    - Dst: as_ref
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:131,1
    - Dst: expect
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:131,1
    - Dst: as_ref
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:132,1
    - Dst: expect
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:132,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:135,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:136,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:137,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:140,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:141,1
    - Dst: crate::Result::into
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:141,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:142,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:142,1
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:145,1
    - Dst: crate::Result::into
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:149,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:150,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:151,1
    - Dst: Some
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:152,1
    - Dst: Err
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:158,1
    - Dst: InvalidOperation::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:158,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:160,1
    - Dst: lock
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:166,1
    - Dst: unwrap
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:166,1
    - Dst: insert
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:167,1
    - Dst: SharedStruct::new
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:167,1
    - Dst: map_err
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:175,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 76
    argCount: 2
    argNames:
    - logid
    - w
    argTypes:
    - i32
    - Work
    constantsTouched: []
    func_position:
      end: 176
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 176
    functionName: CalculatorServer::handle_calculate
    functionSourceFile: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs
    functionUses: 0
    functionsReached:
    - SharedStruct::new
    - is_none
    - Some
    - as_ref
    - insert
    - Err
    - Ok
    - crate::Result::into
    - expect
    - InvalidOperation::new
    - lock
    - '&str::to_owned'
    - unwrap
    - map_err
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_calculate(&self, logid: i32, w: Work) -> thrift::Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: CalculatorServer::handle_zip
    functionSourceFile: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_zip(&self) -> thrift::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: midlayer::Meal::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:33,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:33,1
    - Dst: base_one::Noodle::default
      Src: /src/thrift/lib/rs/test/src/lib.rs:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: tests::must_be_able_to_use_constructor
    functionSourceFile: /src/thrift/lib/rs/test/src/lib.rs
    functionUses: 0
    functionsReached:
    - base_one::Noodle::default
    - midlayer::Meal::new
    - Some
    linkageType: ''
    returnType: void
    signature: fn must_be_able_to_use_constructor()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: midlayer::Meal::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: tests::must_be_able_to_use_constructor_with_no_fields
    functionSourceFile: /src/thrift/lib/rs/test/src/lib.rs
    functionUses: 0
    functionsReached:
    - midlayer::Meal::new
    linkageType: ''
    returnType: void
    signature: fn must_be_able_to_use_constructor_with_no_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: midlayer::Meal::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:43,1
    - Dst: base_one::Noodle::default
      Src: /src/thrift/lib/rs/test/src/lib.rs:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: tests::must_be_able_to_use_constructor_without_option_wrap
    functionSourceFile: /src/thrift/lib/rs/test/src/lib.rs
    functionUses: 0
    functionsReached:
    - base_one::Noodle::default
    - midlayer::Meal::new
    linkageType: ''
    returnType: void
    signature: fn must_be_able_to_use_constructor_without_option_wrap()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:49,1
    - Dst: base_one::Noodle::default
      Src: /src/thrift/lib/rs/test/src/lib.rs:49,1
    - Dst: Default::default
      Src: /src/thrift/lib/rs/test/src/lib.rs:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: tests::must_be_able_to_use_defaults
    functionSourceFile: /src/thrift/lib/rs/test/src/lib.rs
    functionUses: 0
    functionsReached:
    - Default::default
    - base_one::Noodle::default
    - Some
    linkageType: ''
    returnType: void
    signature: fn must_be_able_to_use_defaults()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:65,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:67,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:68,1
    - Dst: TBinaryOutputProtocol::write_struct_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:70,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/lib.rs:71,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:70,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:74,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:77,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:74,1
    - Dst: TBinaryOutputProtocol::write_struct_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:80,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/lib.rs:81,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:80,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:84,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:87,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:84,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/test/src/lib.rs:90,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:90,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:91,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:91,1
    - Dst: TBinaryOutputProtocol::write_field_stop
      Src: /src/thrift/lib/rs/test/src/lib.rs:92,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:92,1
    - Dst: TBinaryOutputProtocol::write_struct_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:93,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:93,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:94,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:94,1
    - Dst: TBinaryOutputProtocol::write_field_stop
      Src: /src/thrift/lib/rs/test/src/lib.rs:95,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:95,1
    - Dst: TBinaryOutputProtocol::write_struct_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:96,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:96,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:99,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:100,1
    - Dst: base_one::AidKit::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/src/lib.rs:101,1
    - Dst: thrift::Result::expect
      Src: /src/thrift/lib/rs/test/src/lib.rs:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 81
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 108
      start: 55
    functionDepth: 3
    functionLinenumber: 55
    functionLinenumberEnd: 108
    functionName: tests::unknown_union_variant_in_struct_field_is_treated_as_none
    functionSourceFile: /src/thrift/lib/rs/test/src/lib.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::new
    - Vec::new
    - TBinaryOutputProtocol::write_struct_end
    - Some
    - Cursor::new
    - TBinaryOutputProtocol::write_struct_begin
    - TBinaryOutputProtocol::new
    - TBinaryOutputProtocol::write_field_begin
    - '&str::to_owned'
    - TBinaryOutputProtocol::write_i32
    - TBinaryOutputProtocol::write_field_stop
    - thrift::Result::expect
    - base_one::AidKit::read_from_in_protocol
    - crate::Result::unwrap
    - TBinaryOutputProtocol::write_field_end
    linkageType: ''
    returnType: void
    signature: fn unknown_union_variant_in_struct_field_is_treated_as_none()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:123,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:125,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:125,1
    - Dst: TBinaryOutputProtocol::write_struct_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:126,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/lib.rs:127,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:126,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:131,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:134,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:131,1
    - Dst: TBinaryOutputProtocol::write_struct_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:137,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/lib.rs:138,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:137,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:141,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:144,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:141,1
    - Dst: TBinaryOutputProtocol::write_double
      Src: /src/thrift/lib/rs/test/src/lib.rs:147,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:147,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:148,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:148,1
    - Dst: TBinaryOutputProtocol::write_field_stop
      Src: /src/thrift/lib/rs/test/src/lib.rs:149,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:149,1
    - Dst: TBinaryOutputProtocol::write_struct_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:150,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:150,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:151,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:151,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:153,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:156,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:153,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/test/src/lib.rs:159,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:159,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:160,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:160,1
    - Dst: TBinaryOutputProtocol::write_field_stop
      Src: /src/thrift/lib/rs/test/src/lib.rs:161,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:161,1
    - Dst: TBinaryOutputProtocol::write_struct_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:162,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:162,1
    - Dst: base_one::MeasuringAids::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/src/lib.rs:165,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:165,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:166,1
    - Dst: thrift::Result::expect
      Src: /src/thrift/lib/rs/test/src/lib.rs:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 99
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 175
      start: 111
    functionDepth: 3
    functionLinenumber: 111
    functionLinenumberEnd: 175
    functionName: tests::union_with_known_and_unknown_fields_deserializes_to_known_variant
    functionSourceFile: /src/thrift/lib/rs/test/src/lib.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::new
    - Vec::new
    - TBinaryOutputProtocol::write_struct_end
    - Some
    - Cursor::new
    - TBinaryOutputProtocol::write_double
    - TBinaryOutputProtocol::write_struct_begin
    - TBinaryOutputProtocol::new
    - TBinaryOutputProtocol::write_field_begin
    - '&str::to_owned'
    - TBinaryOutputProtocol::write_field_stop
    - TBinaryOutputProtocol::write_i32
    - thrift::Result::expect
    - base_one::MeasuringAids::read_from_in_protocol
    - crate::Result::unwrap
    - TBinaryOutputProtocol::write_field_end
    linkageType: ''
    returnType: void
    signature: fn union_with_known_and_unknown_fields_deserializes_to_known_variant()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:192,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:194,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:194,1
    - Dst: TBinaryOutputProtocol::write_struct_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:196,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/lib.rs:197,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:196,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:201,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:204,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:201,1
    - Dst: TBinaryOutputProtocol::write_struct_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:211,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/lib.rs:212,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:211,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:215,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:218,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:215,1
    - Dst: TBinaryOutputProtocol::write_struct_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:221,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/lib.rs:222,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:221,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:225,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:228,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:225,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/test/src/lib.rs:231,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:231,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:232,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:232,1
    - Dst: TBinaryOutputProtocol::write_field_stop
      Src: /src/thrift/lib/rs/test/src/lib.rs:233,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:233,1
    - Dst: TBinaryOutputProtocol::write_struct_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:234,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:234,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:235,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:235,1
    - Dst: TBinaryOutputProtocol::write_field_stop
      Src: /src/thrift/lib/rs/test/src/lib.rs:236,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:236,1
    - Dst: TBinaryOutputProtocol::write_struct_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:237,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:237,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:238,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:238,1
    - Dst: TBinaryOutputProtocol::write_field_begin
      Src: /src/thrift/lib/rs/test/src/lib.rs:240,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/lib.rs:243,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:240,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/test/src/lib.rs:246,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:246,1
    - Dst: TBinaryOutputProtocol::write_field_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:247,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:247,1
    - Dst: TBinaryOutputProtocol::write_field_stop
      Src: /src/thrift/lib/rs/test/src/lib.rs:248,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:248,1
    - Dst: TBinaryOutputProtocol::write_struct_end
      Src: /src/thrift/lib/rs/test/src/lib.rs:249,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/test/src/lib.rs:249,1
    - Dst: base_one::InstrumentBox::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/src/lib.rs:252,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:252,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/test/src/lib.rs:253,1
    - Dst: thrift::Result::expect
      Src: /src/thrift/lib/rs/test/src/lib.rs:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 132
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 267
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 267
    functionName: tests::nested_union_unknown_variant_does_not_corrupt_stream
    functionSourceFile: /src/thrift/lib/rs/test/src/lib.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::new
    - Vec::new
    - TBinaryOutputProtocol::write_struct_end
    - Some
    - Cursor::new
    - TBinaryOutputProtocol::write_struct_begin
    - TBinaryOutputProtocol::new
    - TBinaryOutputProtocol::write_field_begin
    - '&str::to_owned'
    - TBinaryOutputProtocol::write_i32
    - TBinaryOutputProtocol::write_field_stop
    - base_one::InstrumentBox::read_from_in_protocol
    - thrift::Result::expect
    - crate::Result::unwrap
    - TBinaryOutputProtocol::write_field_end
    linkageType: ''
    returnType: void
    signature: fn nested_union_unknown_variant_does_not_corrupt_stream()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MealServiceSyncProcessor::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:159,1
    - Dst: TServer::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:160,1
    - Dst: thrift::Result::listen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:170,1
    - Dst: thrift::Result::listen_uds
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - socket
    - r_transport_factory
    - i_protocol_factory
    - w_transport_factory
    - o_protocol_factory
    argTypes:
    - Socket
    - RTF
    - IPF
    - WTF
    - OPF
    constantsTouched: []
    func_position:
      end: 173
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 173
    functionName: run_meal_server
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::listen_uds
    - thrift::Result::listen
    - MealServiceSyncProcessor::new
    - TServer::new
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn run_meal_server<RTF, IPF, WTF, OPF>(socket: Socket,r_transport_factory:
      RTF,i_protocol_factory: IPF,w_transport_factory: WTF,o_protocol_factory: OPF,)
      -> thrift::Result<()>whereRTF: TReadTransportFactory + ''static,IPF: TInputProtocolFactory
      + ''static,WTF: TWriteTransportFactory + ''static,OPF: TOutputProtocolFactory
      + ''static,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FullMealAndDrinksServiceSyncProcessor::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:188,1
    - Dst: TServer::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:189,1
    - Dst: thrift::Result::listen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:199,1
    - Dst: thrift::Result::listen_uds
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - socket
    - r_transport_factory
    - i_protocol_factory
    - w_transport_factory
    - o_protocol_factory
    argTypes:
    - Socket
    - RTF
    - IPF
    - WTF
    - OPF
    constantsTouched: []
    func_position:
      end: 202
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 202
    functionName: run_full_meal_server
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::listen_uds
    - thrift::Result::listen
    - FullMealAndDrinksServiceSyncProcessor::new
    - TServer::new
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn run_full_meal_server<RTF, IPF, WTF, OPF>(socket: Socket,r_transport_factory:
      RTF,i_protocol_factory: IPF,w_transport_factory: WTF,o_protocol_factory: OPF,)
      -> thrift::Result<()>whereRTF: TReadTransportFactory + ''static,IPF: TInputProtocolFactory
      + ''static,WTF: TWriteTransportFactory + ''static,OPF: TOutputProtocolFactory
      + ''static,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:209,1
    - Dst: meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 210
      start: 207
    functionDepth: 3
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionName: PartHandler::handle_meal
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - meal
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_meal(&self) -> thrift::Result<Meal>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:216,1
    - Dst: ramen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames: []
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 2
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: PartHandler::handle_ramen
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - ramen
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_ramen(&self, _: i32) -> thrift::Result<Ramen>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:223,1
    - Dst: napkin
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: PartHandler::handle_napkin
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - napkin
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_napkin(&self) -> thrift::Result<Napkin>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:235,1
    - Dst: FullMealAndDrinks::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:235,1
    - Dst: full_meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 4
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: FullHandler::handle_full_meal_and_drinks
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - FullMealAndDrinks::new
    - full_meal
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_full_meal_and_drinks(&self) -> thrift::Result<FullMealAndDrinks>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: FullHandler::handle_best_pie
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_best_pie(&self) -> thrift::Result<Pie>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:247,1
    - Dst: full_meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 4
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: FullHandler::handle_full_meal
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - full_meal
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_full_meal(&self) -> thrift::Result<FullMeal>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:254,1
    - Dst: meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 255
      start: 252
    functionDepth: 3
    functionLinenumber: 252
    functionLinenumberEnd: 255
    functionName: FullHandler::handle_meal
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - meal
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_meal(&self) -> thrift::Result<Meal>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:261,1
    - Dst: ramen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames: []
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 262
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionName: FullHandler::handle_ramen
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - ramen
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_ramen(&self, _: i32) -> thrift::Result<Ramen>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:268,1
    - Dst: napkin
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: FullHandler::handle_napkin
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - napkin
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: fn handle_napkin(&self) -> thrift::Result<Napkin>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FullMeal::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:273,1
    - Dst: meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:273,1
    - Dst: Dessert::Port
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:273,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 274
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionName: full_meal
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 3
    functionsReached:
    - '&str::to_owned'
    - meal
    - Dessert::Port
    - FullMeal::new
    linkageType: ''
    returnType: FullMeal
    signature: fn full_meal() -> FullMeal
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Meal::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:277,1
    - Dst: noodle
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:277,1
    - Dst: ramen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 278
      start: 276
    functionDepth: 2
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionName: meal
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 7
    functionsReached:
    - Meal::new
    - noodle
    - ramen
    linkageType: ''
    returnType: Meal
    signature: fn meal() -> Meal
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Noodle::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:281,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 282
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionName: noodle
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 1
    functionsReached:
    - '&str::to_owned'
    - Noodle::new
    linkageType: ''
    returnType: Noodle
    signature: fn noodle() -> Noodle
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ramen::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:285,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 286
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionName: ramen
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 5
    functionsReached:
    - Ramen::new
    - '&str::to_owned'
    linkageType: ''
    returnType: Ramen
    signature: fn ramen() -> Ramen
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 290
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionName: napkin
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Napkin
    signature: fn napkin() -> Napkin
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: recursive::TestServiceSyncProcessor::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:305,1
    - Dst: TServer::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:306,1
    - Dst: thrift::Result::listen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:316,1
    - Dst: thrift::Result::listen_uds
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:317,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - socket
    - r_transport_factory
    - i_protocol_factory
    - w_transport_factory
    - o_protocol_factory
    argTypes:
    - Socket
    - RTF
    - IPF
    - WTF
    - OPF
    constantsTouched: []
    func_position:
      end: 319
      start: 292
    functionDepth: 2
    functionLinenumber: 292
    functionLinenumberEnd: 319
    functionName: run_recursive_server
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - recursive::TestServiceSyncProcessor::new
    - thrift::Result::listen
    - thrift::Result::listen_uds
    - TServer::new
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn run_recursive_server<RTF, IPF, WTF, OPF>(socket: Socket,r_transport_factory:
      RTF,i_protocol_factory: IPF,w_transport_factory: WTF,o_protocol_factory: OPF,)
      -> thrift::Result<()>whereRTF: TReadTransportFactory + ''static,IPF: TInputProtocolFactory
      + ''static,WTF: TWriteTransportFactory + ''static,OPF: TOutputProtocolFactory
      + ''static,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tree
    argTypes:
    - recursive::RecTree
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: RecursiveTestServerHandler::handle_echo_tree
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_echo_tree(&self, tree: recursive::RecTree) -> thrift::Result<recursive::RecTree>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - lst
    argTypes:
    - recursive::RecList
    constantsTouched: []
    func_position:
      end: 331
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionName: RecursiveTestServerHandler::handle_echo_list
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_echo_list(&self, lst: recursive::RecList) -> thrift::Result<recursive::RecList>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - item
    argTypes:
    - recursive::CoRec
    constantsTouched: []
    func_position:
      end: 336
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionName: RecursiveTestServerHandler::handle_echo_co_rec
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn handle_echo_co_rec(&self, item: recursive::CoRec) -> thrift::Result<recursive::CoRec>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: exec_full_meal_client
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:136,1
    - Dst: exec_meal_client
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:137,1
    - Dst: exec_recursive_client
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:138,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:139,1
    - Dst: thrift::Error::from
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - service
    - i_prot
    - o_prot
    argTypes:
    - '&str'
    - Box<dyn TInputProtocol>
    - Box<dyn TOutputProtocol>
    constantsTouched: []
    func_position:
      end: 144
      start: 130
    functionDepth: 3
    functionLinenumber: 130
    functionLinenumberEnd: 144
    functionName: run_client
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 0
    functionsReached:
    - Err
    - exec_meal_client
    - thrift::Error::from
    - exec_recursive_client
    - exec_full_meal_client
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn run_client(service: &str,i_prot: Box<dyn TInputProtocol>,o_prot:
      Box<dyn TOutputProtocol>,) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MealServiceSyncClient::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:150,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:156,1
    - Dst: thrift::Result::ramen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:156,1
    - Dst: thrift::Result::map
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:156,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:157,1
    - Dst: thrift::Result::meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:157,1
    - Dst: thrift::Result::map
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:157,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:158,1
    - Dst: thrift::Result::napkin
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:158,1
    - Dst: thrift::Result::map
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:158,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:160,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 2
    argNames:
    - i_prot
    - o_prot
    argTypes:
    - Box<dyn TInputProtocol>
    - Box<dyn TOutputProtocol>
    constantsTouched: []
    func_position:
      end: 161
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 161
    functionName: exec_meal_client
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 1
    functionsReached:
    - thrift::Result::ramen
    - MealServiceSyncClient::new
    - Ok
    - thrift::Result::napkin
    - thrift::Result::meal
    - thrift::Result::map
    - execute_call
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn exec_meal_client(i_prot: Box<dyn TInputProtocol>,o_prot: Box<dyn
      TOutputProtocol>,) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FullMealServiceSyncClient::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:167,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:169,1
    - Dst: thrift::Result::ramen
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:169,1
    - Dst: thrift::Result::map
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:169,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:170,1
    - Dst: thrift::Result::meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:170,1
    - Dst: thrift::Result::map
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:170,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:171,1
    - Dst: thrift::Result::napkin
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:171,1
    - Dst: thrift::Result::map
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:171,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:172,1
    - Dst: thrift::Result::full_meal
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:172,1
    - Dst: thrift::Result::map
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:172,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 43
    argCount: 2
    argNames:
    - i_prot
    - o_prot
    argTypes:
    - Box<dyn TInputProtocol>
    - Box<dyn TOutputProtocol>
    constantsTouched: []
    func_position:
      end: 175
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 175
    functionName: exec_full_meal_client
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 1
    functionsReached:
    - thrift::Result::ramen
    - Ok
    - thrift::Result::napkin
    - thrift::Result::meal
    - FullMealServiceSyncClient::new
    - thrift::Result::map
    - execute_call
    - thrift::Result::full_meal
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn exec_full_meal_client(i_prot: Box<dyn TInputProtocol>,o_prot: Box<dyn
      TOutputProtocol>,) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: recursive::TestServiceSyncClient::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:181,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:184,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:197,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:201,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:214,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:217,1
    - Dst: thrift::Result::echo_tree
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:217,1
    - Dst: thrift::Result::clone
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:217,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:219,1
    - Dst: into
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:219,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:227,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:227,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:228,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:228,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:230,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:232,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:234,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:236,1
    - Dst: thrift::Result::echo_list
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:236,1
    - Dst: thrift::Result::clone
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:236,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:238,1
    - Dst: into
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:238,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:242,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:242,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:243,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:244,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:244,1
    - Dst: execute_call
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:248,1
    - Dst: thrift::Result::echo_co_rec
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:249,1
    - Dst: thrift::Result::clone
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:249,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:252,1
    - Dst: into
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:252,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:255,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 73
    argCount: 2
    argNames:
    - i_prot
    - o_prot
    argTypes:
    - Box<dyn TInputProtocol>
    - Box<dyn TOutputProtocol>
    constantsTouched: []
    func_position:
      end: 256
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 256
    functionName: exec_recursive_client
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 1
    functionsReached:
    - recursive::TestServiceSyncClient::new
    - Some
    - thrift::Result::echo_co_rec
    - thrift::Result::clone
    - into
    - Err
    - Box::new
    - Ok
    - thrift::Result::echo_list
    - execute_call
    - thrift::Result::echo_tree
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn exec_recursive_client(i_prot: Box<dyn TInputProtocol>,o_prot: Box<dyn
      TOutputProtocol>,) -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs:262,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - service_type
    - call_name
    - f
    argTypes:
    - '&str'
    - '&str'
    - F
    constantsTouched: []
    func_position:
      end: 273
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 273
    functionName: execute_call
    functionSourceFile: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
    functionUses: 3
    functionsReached:
    - f
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn execute_call<F, R>(service_type: &str, call_name: &str, mut f:
      F) -> thrift::Result<R>whereF: FnMut() -> thrift::Result<R>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:62,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:65,1
    - Dst: Result::write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:66,1
    - Dst: thrift::Result::flush
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:67,1
    - Dst: TCompactOutputProtocol::new
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:70,1
    - Dst: Result::write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:71,1
    - Dst: thrift::Result::flush
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:72,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:74,1
    - Dst: '&str::into'
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:74,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:76,1
    - Dst: TBufferChannel::write_bytes
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:76,1
    - Dst: Vec::to_vec
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - fuzz_test
    - protocol
    - buffer_size
    argTypes:
    - '&FuzzTest'
    - '&str'
    - usize
    constantsTouched: []
    func_position:
      end: 77
      start: 57
    functionDepth: 4
    functionLinenumber: 57
    functionLinenumberEnd: 77
    functionName: serialize_fuzz_test
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs
    functionUses: 2
    functionsReached:
    - Result::write_to_out_protocol
    - TCompactOutputProtocol::new
    - TBufferChannel::with_capacity
    - Err
    - Ok
    - TBufferChannel::write_bytes
    - TBinaryOutputProtocol::new
    - Vec::to_vec
    - '&str::into'
    - thrift::Result::flush
    linkageType: ''
    returnType: Result
    signature: 'fn serialize_fuzz_test(fuzz_test: &FuzzTest,protocol: &str,buffer_size:
      usize,) -> Result<Vec<u8>, Box<dyn std::error::Error>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: File::open
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:86,1
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:87,1
    - Dst: read_to_end
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:88,1
    - Dst: Unstructured::new
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:91,1
    - Dst: FuzzTest::arbitrary
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:94,1
    - Dst: '&Path::file_name'
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:96,1
    - Dst: ok_or
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:96,1
    - Dst: to_str
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:96,1
    - Dst: ok_or
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:96,1
    - Dst: '&Path::join'
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:101,1
    - Dst: serialize_fuzz_test
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:104,1
    - Dst: fs::write
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:105,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:108,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 4
    argNames:
    - input_path
    - output_dir
    - protocol
    - buffer_size
    argTypes:
    - '&Path'
    - '&Path'
    - '&str'
    - usize
    constantsTouched: []
    func_position:
      end: 109
      start: 79
    functionDepth: 5
    functionLinenumber: 79
    functionLinenumberEnd: 109
    functionName: convert_corpus_file
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs
    functionUses: 1
    functionsReached:
    - File::open
    - Vec::new
    - serialize_fuzz_test
    - fs::write
    - FuzzTest::arbitrary
    - to_str
    - read_to_end
    - ok_or
    - '&Path::join'
    - Ok
    - '&Path::file_name'
    - Unstructured::new
    linkageType: ''
    returnType: Result
    signature: 'fn convert_corpus_file(input_path: &Path,output_dir: &Path,protocol:
      &str,buffer_size: usize,) -> Result<(), Box<dyn std::error::Error>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:119,1
    - Dst: rand::random::<u8>
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:119,1
    - Dst: collect
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:119,1
    - Dst: Unstructured::new
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:122,1
    - Dst: FuzzTest::arbitrary
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:125,1
    - Dst: '&Path::join'
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:127,1
    - Dst: serialize_fuzz_test
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:130,1
    - Dst: fs::write
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:131,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs:134,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 5
    argNames:
    - output_dir
    - index
    - protocol
    - buffer_size
    - random_size
    argTypes:
    - '&Path'
    - usize
    - '&str'
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 135
      start: 111
    functionDepth: 5
    functionLinenumber: 111
    functionLinenumberEnd: 135
    functionName: generate_random_file
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs
    functionUses: 1
    functionsReached:
    - serialize_fuzz_test
    - map
    - FuzzTest::arbitrary
    - fs::write
    - '&Path::join'
    - Ok
    - Unstructured::new
    - collect
    - rand::random::<u8>
    linkageType: ''
    returnType: Result
    signature: 'fn generate_random_file(output_dir: &Path,index: usize,protocol: &str,buffer_size:
      usize,random_size: usize,) -> Result<(), Box<dyn std::error::Error>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: run
      Src: /src/thrift/lib/rs/test/fuzz/fuzz_targets/structured_roundtrip_compact.rs:2,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 7
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: fuzz_target
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/fuzz_targets/structured_roundtrip_compact.rs
    functionUses: 0
    functionsReached:
    - run
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: TestEnum::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_i32'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:55,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:56,1
    - Dst: TestEnum::from
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: TestEnum::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 1
    functionsReached:
    - TestEnum::from
    - Ok
    - '&mut dyn TInputProtocol::read_i32'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<TestEnum>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TestEnum::from
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - '&i32'
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: TestEnum::from
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 2
    functionsReached:
    - TestEnum::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(i: &i32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:116,1
    - Dst: F2::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:117,1
    - Dst: F3::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:118,1
    - Dst: F4::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:119,1
    - Dst: F5::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:120,1
    - Dst: F6::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:121,1
    - Dst: into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:122,1
    - Dst: Vec::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:123,1
    - Dst: F9::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 9
    argNames:
    - bool_field
    - byte_field
    - i16_field
    - i32_field
    - i64_field
    - double_field
    - string_field
    - binary_field
    - uuid_field
    argTypes:
    - F1
    - F2
    - F3
    - F4
    - F5
    - F6
    - F7
    - F8
    - F9
    constantsTouched: []
    func_position:
      end: 126
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 126
    functionName: BasicTypes::new
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - F3::into
    - F9::into
    - into
    - Vec::into
    - F4::into
    - F2::into
    - F6::into
    - F5::into
    linkageType: ''
    returnType: BasicTypes
    signature: 'pub fn new<F1, F2, F3, F4, F5, F6, F7, F8, F9>(bool_field: F1, byte_field:
      F2, i16_field: F3, i32_field: F4, i64_field: F5, double_field: F6, string_field:
      F7, binary_field: F8, uuid_field: F9) -> BasicTypes where F1: Into<Option<bool>>,
      F2: Into<Option<i8>>, F3: Into<Option<i16>>, F4: Into<Option<i32>>, F5: Into<Option<i64>>,
      F6: Into<Option<OrderedFloat<f64>>>, F7: Into<Option<String>>, F8: Into<Option<Vec<u8>>>,
      F9: Into<Option<uuid::Uuid>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:131,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:132,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:133,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:134,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:135,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:136,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:137,1
    - Dst: OrderedFloat::from
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:137,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:138,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:138,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:139,1
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:139,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:140,1
    - Dst: uuid::Uuid::nil
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:140,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:142,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:146,1
    - Dst: '&mut dyn TInputProtocol::read_bool'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:149,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:150,1
    - Dst: '&mut dyn TInputProtocol::read_i8'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:153,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:154,1
    - Dst: '&mut dyn TInputProtocol::read_i16'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:157,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:158,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:161,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:162,1
    - Dst: '&mut dyn TInputProtocol::read_i64'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:165,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:166,1
    - Dst: OrderedFloat::from
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:169,1
    - Dst: '&mut dyn TInputProtocol::read_double'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:169,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:170,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:173,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:174,1
    - Dst: '&mut dyn TInputProtocol::read_bytes'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:177,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:178,1
    - Dst: '&mut dyn TInputProtocol::read_uuid'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:181,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:182,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:185,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:188,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:190,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:202,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 104
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 203
      start: 130
    functionDepth: 4
    functionLinenumber: 130
    functionLinenumberEnd: 203
    functionName: BasicTypes::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 3
    functionsReached:
    - Vec::new
    - '&mut dyn TInputProtocol::read_i64'
    - thrift::protocol::field_id
    - '&mut dyn TInputProtocol::read_uuid'
    - '&mut dyn TInputProtocol::read_bytes'
    - '&mut dyn TInputProtocol::read_i16'
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_bool'
    - '&mut dyn TInputProtocol::read_field_end'
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - '&mut dyn TInputProtocol::read_struct_end'
    - OrderedFloat::from
    - '&mut dyn TInputProtocol::read_double'
    - '&str::to_owned'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    - uuid::Uuid::nil
    - Ok
    - '&mut dyn TInputProtocol::read_i8'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<BasicTypes>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:205,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:206,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:208,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:208,1
    - Dst: '&mut dyn TOutputProtocol::write_bool'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:209,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:210,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:213,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:213,1
    - Dst: '&mut dyn TOutputProtocol::write_i8'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:214,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:215,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:218,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:218,1
    - Dst: '&mut dyn TOutputProtocol::write_i16'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:219,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:220,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:223,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:223,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:224,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:225,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:228,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:228,1
    - Dst: '&mut dyn TOutputProtocol::write_i64'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:229,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:230,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:233,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:233,1
    - Dst: '&mut dyn TOutputProtocol::write_double'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:234,1
    - Dst: into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:234,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:235,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:238,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:238,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:239,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:240,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:243,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:243,1
    - Dst: '&mut dyn TOutputProtocol::write_bytes'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:244,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:245,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:248,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:248,1
    - Dst: '&mut dyn TOutputProtocol::write_uuid'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:249,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:250,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:252,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:253,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 159
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 254
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 254
    functionName: BasicTypes::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_i8'
    - '&mut dyn TOutputProtocol::write_string'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - into
    - '&mut dyn TOutputProtocol::write_i64'
    - '&mut dyn TOutputProtocol::write_bytes'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_bool'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_double'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_i16'
    - '&mut dyn TOutputProtocol::write_field_begin'
    - '&mut dyn TOutputProtocol::write_uuid'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F2::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:274,1
    - Dst: F3::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:275,1
    - Dst: F4::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - req_field
    - opt_field
    - default_field
    - opt_with_default
    - req_with_default
    argTypes:
    - i32
    - F2
    - F3
    - F4
    - bool
    constantsTouched: []
    func_position:
      end: 279
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 279
    functionName: Requiredness::new
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - F3::into
    - F4::into
    - F2::into
    linkageType: ''
    returnType: Requiredness
    signature: 'pub fn new<F2, F3, F4>(req_field: i32, opt_field: F2, default_field:
      F3, opt_with_default: F4, req_with_default: bool) -> Requiredness where F2:
      Into<Option<i32>>, F3: Into<Option<i32>>, F4: Into<Option<String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:284,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:287,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:291,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:295,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:298,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:299,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:302,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:303,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:306,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:307,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:310,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:311,1
    - Dst: '&mut dyn TInputProtocol::read_bool'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:314,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:315,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:318,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:321,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:323,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:324,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:325,1
    - Dst: None::expect
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:327,1
    - Dst: None::expect
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:331,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:333,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 78
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 334
      start: 283
    functionDepth: 4
    functionLinenumber: 283
    functionLinenumberEnd: 334
    functionName: Requiredness::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - '&mut dyn TInputProtocol::read_i32'
    - None::expect
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - '&mut dyn TInputProtocol::read_bool'
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - thrift::protocol::verify_required_field_exists
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<Requiredness>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:336,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:337,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:338,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:338,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:339,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:340,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:342,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:342,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:343,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:344,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:347,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:347,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:348,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:349,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:352,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:352,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:353,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:354,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:356,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:356,1
    - Dst: '&mut dyn TOutputProtocol::write_bool'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:357,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:358,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:359,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:360,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 90
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 361
      start: 335
    functionDepth: 2
    functionLinenumber: 335
    functionLinenumberEnd: 361
    functionName: Requiredness::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_string'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_bool'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F1::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:379,1
    - Dst: F100::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:380,1
    - Dst: F255::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:381,1
    - Dst: F32767::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - first
    - gap
    - medium_id
    - large_id
    argTypes:
    - F1
    - F100
    - F255
    - F32767
    constantsTouched: []
    func_position:
      end: 384
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 384
    functionName: FieldIDTest::new
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - F1::into
    - F32767::into
    - F255::into
    - F100::into
    linkageType: ''
    returnType: FieldIDTest
    signature: 'pub fn new<F1, F100, F255, F32767>(first: F1, gap: F100, medium_id:
      F255, large_id: F32767) -> FieldIDTest where F1: Into<Option<i32>>, F100: Into<Option<i32>>,
      F255: Into<Option<i32>>, F32767: Into<Option<i32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:389,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:390,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:391,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:392,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:393,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:395,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:399,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:402,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:403,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:406,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:407,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:410,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:411,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:414,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:415,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:418,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:421,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:423,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:430,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 63
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 431
      start: 388
    functionDepth: 4
    functionLinenumber: 388
    functionLinenumberEnd: 431
    functionName: FieldIDTest::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 1
    functionsReached:
    - Some
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_struct_end'
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<FieldIDTest>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:433,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:434,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:436,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:436,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:437,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:438,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:441,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:441,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:442,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:443,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:446,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:446,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:447,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:448,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:451,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:451,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:452,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:453,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:455,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:456,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 76
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 457
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 457
    functionName: FieldIDTest::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 471
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 471
    functionName: EmptyStruct::new
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EmptyStruct
    signature: pub fn new() -> EmptyStruct
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:476,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:478,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:482,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:483,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:485,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:487,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 488
      start: 475
    functionDepth: 4
    functionLinenumber: 475
    functionLinenumberEnd: 488
    functionName: EmptyStruct::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 1
    functionsReached:
    - '&mut dyn TInputProtocol::read_struct_end'
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<EmptyStruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:490,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:491,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:492,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:493,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 494
      start: 489
    functionDepth: 2
    functionLinenumber: 489
    functionLinenumberEnd: 494
    functionName: EmptyStruct::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TOutputProtocol::write_struct_end'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:514,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:516,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:520,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:523,1
    - Dst: None::is_none
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:524,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:525,1
    - Dst: TestUnion::IntField
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:525,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:530,1
    - Dst: None::is_none
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:531,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:532,1
    - Dst: TestUnion::StringField
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:532,1
    - Dst: BasicTypes::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:537,1
    - Dst: None::is_none
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:538,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:539,1
    - Dst: TestUnion::StructField
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:539,1
    - Dst: '&mut dyn TInputProtocol::read_bytes'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:544,1
    - Dst: None::is_none
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:545,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:546,1
    - Dst: TestUnion::BinaryField
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:546,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:551,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:555,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:557,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:559,1
    - Dst: thrift::Error::Protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:560,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:561,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:568,1
    - Dst: thrift::Error::Protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:569,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:570,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:577,1
    - Dst: thrift::Error::Protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:578,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:579,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:586,1
    - Dst: Err
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:588,1
    - Dst: thrift::Error::Protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:589,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:590,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 102
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 594
      start: 510
    functionDepth: 5
    functionLinenumber: 510
    functionLinenumberEnd: 594
    functionName: TestUnion::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 1
    functionsReached:
    - thrift::protocol::field_id
    - TestUnion::BinaryField
    - '&mut dyn TInputProtocol::read_bytes'
    - '&mut dyn TInputProtocol::read_i32'
    - None::is_none
    - Err
    - '&mut dyn TInputProtocol::read_field_end'
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - '&mut dyn TInputProtocol::read_struct_end'
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - TestUnion::StringField
    - '&mut dyn TInputProtocol::read_field_begin'
    - TestUnion::StructField
    - Ok
    - thrift::Error::Protocol
    - TestUnion::IntField
    - ProtocolError::new
    - BasicTypes::read_from_in_protocol
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<TestUnion>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:596,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:597,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:600,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:600,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:601,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:602,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:605,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:605,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:606,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:607,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:610,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:610,1
    - Dst: thrift::Result::write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:611,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:612,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:615,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:615,1
    - Dst: '&mut dyn TOutputProtocol::write_bytes'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:616,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:617,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:620,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:621,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 71
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 622
      start: 595
    functionDepth: 4
    functionLinenumber: 595
    functionLinenumberEnd: 622
    functionName: TestUnion::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::write_to_out_protocol
    - '&mut dyn TOutputProtocol::write_string'
    - '&mut dyn TOutputProtocol::write_bytes'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F1::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:642,1
    - Dst: F2::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:643,1
    - Dst: F3::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:644,1
    - Dst: F4::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:645,1
    - Dst: F5::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:646,1
    - Dst: F6::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:647,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 6
    argNames:
    - int_list
    - string_set
    - int_string_map
    - struct_list
    - nested_map
    - typedef_set
    argTypes:
    - F1
    - F2
    - F3
    - F4
    - F5
    - F6
    constantsTouched: []
    func_position:
      end: 649
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 649
    functionName: Containers::new
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - F3::into
    - F1::into
    - F4::into
    - F2::into
    - F6::into
    - F5::into
    linkageType: ''
    returnType: Containers
    signature: 'pub fn new<F1, F2, F3, F4, F5, F6>(int_list: F1, string_set: F2, int_string_map:
      F3, struct_list: F4, nested_map: F5, typedef_set: F6) -> Containers where F1:
      Into<Option<Vec<i32>>>, F2: Into<Option<BTreeSet<String>>>, F3: Into<Option<BTreeMap<i32,
      String>>>, F4: Into<Option<Vec<BasicTypes>>>, F5: Into<Option<BTreeMap<String,
      Vec<i32>>>>, F6: Into<Option<BTreeSet<UserId>>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:654,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:655,1
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:655,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:656,1
    - Dst: BTreeSet::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:656,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:657,1
    - Dst: BTreeMap::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:657,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:658,1
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:658,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:659,1
    - Dst: BTreeMap::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:659,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:660,1
    - Dst: BTreeSet::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:660,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:662,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:666,1
    - Dst: '&mut dyn TInputProtocol::read_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:669,1
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:670,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:672,1
    - Dst: TBufferedReadTransport::push
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:673,1
    - Dst: '&mut dyn TInputProtocol::read_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:675,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:676,1
    - Dst: '&mut dyn TInputProtocol::read_set_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:679,1
    - Dst: BTreeSet::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:680,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:682,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:683,1
    - Dst: '&mut dyn TInputProtocol::read_set_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:685,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:686,1
    - Dst: '&mut dyn TInputProtocol::read_map_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:689,1
    - Dst: BTreeMap::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:690,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:692,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:693,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:694,1
    - Dst: '&mut dyn TInputProtocol::read_map_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:696,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:697,1
    - Dst: '&mut dyn TInputProtocol::read_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:700,1
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:701,1
    - Dst: BasicTypes::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:703,1
    - Dst: TBufferedReadTransport::push
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:704,1
    - Dst: '&mut dyn TInputProtocol::read_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:706,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:707,1
    - Dst: '&mut dyn TInputProtocol::read_map_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:710,1
    - Dst: BTreeMap::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:711,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:713,1
    - Dst: '&mut dyn TInputProtocol::read_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:714,1
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:715,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:717,1
    - Dst: TBufferedReadTransport::push
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:718,1
    - Dst: '&mut dyn TInputProtocol::read_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:720,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:721,1
    - Dst: '&mut dyn TInputProtocol::read_map_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:723,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:724,1
    - Dst: '&mut dyn TInputProtocol::read_set_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:727,1
    - Dst: BTreeSet::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:728,1
    - Dst: '&mut dyn TInputProtocol::read_i64'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:730,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:731,1
    - Dst: '&mut dyn TInputProtocol::read_set_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:733,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:734,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:737,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:740,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:742,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:751,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 199
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 752
      start: 653
    functionDepth: 5
    functionLinenumber: 653
    functionLinenumberEnd: 752
    functionName: Containers::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 1
    functionsReached:
    - Vec::new
    - '&mut dyn TInputProtocol::read_i64'
    - '&mut dyn TInputProtocol::read_set_begin'
    - thrift::protocol::field_id
    - SharedStruct::insert
    - '&mut dyn TInputProtocol::read_set_end'
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::read_map_begin'
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - '&mut dyn TInputProtocol::read_struct_end'
    - '&mut dyn TInputProtocol::skip'
    - BTreeMap::new
    - '&mut dyn TInputProtocol::read_struct_begin'
    - BTreeSet::new
    - '&mut dyn TInputProtocol::read_list_end'
    - '&mut dyn TInputProtocol::read_field_begin'
    - '&mut dyn TInputProtocol::read_map_end'
    - '&mut dyn TInputProtocol::read_list_begin'
    - Ok
    - BasicTypes::read_from_in_protocol
    - Vec::with_capacity
    - TBufferedReadTransport::push
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<Containers>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:754,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:755,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:757,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:757,1
    - Dst: '&mut dyn TOutputProtocol::write_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:758,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:758,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:758,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:760,1
    - Dst: '&mut dyn TOutputProtocol::write_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:762,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:763,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:766,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:766,1
    - Dst: '&mut dyn TOutputProtocol::write_set_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:767,1
    - Dst: TSetIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:767,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:767,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:769,1
    - Dst: '&mut dyn TOutputProtocol::write_set_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:771,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:772,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:775,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:775,1
    - Dst: '&mut dyn TOutputProtocol::write_map_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:776,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:776,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:776,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:778,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:779,1
    - Dst: '&mut dyn TOutputProtocol::write_map_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:781,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:782,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:785,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:785,1
    - Dst: '&mut dyn TOutputProtocol::write_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:786,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:786,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:786,1
    - Dst: thrift::Result::write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:788,1
    - Dst: '&mut dyn TOutputProtocol::write_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:790,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:791,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:794,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:794,1
    - Dst: '&mut dyn TOutputProtocol::write_map_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:795,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:795,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:795,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:797,1
    - Dst: '&mut dyn TOutputProtocol::write_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:798,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:798,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:798,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:800,1
    - Dst: '&mut dyn TOutputProtocol::write_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:802,1
    - Dst: '&mut dyn TOutputProtocol::write_map_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:804,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:805,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:808,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:808,1
    - Dst: '&mut dyn TOutputProtocol::write_set_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:809,1
    - Dst: TSetIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:809,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:809,1
    - Dst: '&mut dyn TOutputProtocol::write_i64'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:811,1
    - Dst: '&mut dyn TOutputProtocol::write_set_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:813,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:814,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:816,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:817,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 225
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 818
      start: 753
    functionDepth: 4
    functionLinenumber: 753
    functionLinenumberEnd: 818
    functionName: Containers::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - TStructIdentifier::new
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - thrift::Result::write_to_out_protocol
    - '&mut dyn TOutputProtocol::write_set_begin'
    - '&mut dyn TOutputProtocol::write_field_stop'
    - '&mut dyn TOutputProtocol::write_map_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_i64'
    - '&mut dyn TOutputProtocol::write_list_begin'
    - '&mut dyn TOutputProtocol::write_string'
    - '&mut dyn TOutputProtocol::write_field_begin'
    - TListIdentifier::new
    - '&mut dyn TOutputProtocol::write_set_end'
    - '&mut dyn TOutputProtocol::write_list_end'
    - TMapIdentifier::new
    - TSetIdentifier::new
    - '&mut dyn TOutputProtocol::write_map_begin'
    - len
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F1::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:835,1
    - Dst: F2::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:836,1
    - Dst: F3::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - recurse
    - data
    - children
    argTypes:
    - F1
    - F2
    - F3
    constantsTouched: []
    func_position:
      end: 839
      start: 833
    functionDepth: 0
    functionLinenumber: 833
    functionLinenumberEnd: 839
    functionName: RecursiveStruct::new
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - F1::into
    - F3::into
    - F2::into
    linkageType: ''
    returnType: RecursiveStruct
    signature: 'pub fn new<F1, F2, F3>(recurse: F1, data: F2, children: F3) -> RecursiveStruct
      where F1: Into<Option<Box<RecursiveStruct>>>, F2: Into<Option<i32>>, F3: Into<Option<Vec<Box<RecursiveStruct>>>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:844,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:846,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:849,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:853,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:856,1
    - Dst: RecursiveStruct::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:856,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:857,1
    - Dst: '&mut dyn TInputProtocol::read_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:860,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:861,1
    - Dst: '&mut dyn TInputProtocol::read_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:864,1
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:865,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:867,1
    - Dst: RecursiveStruct::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:867,1
    - Dst: TBufferedReadTransport::push
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:868,1
    - Dst: '&mut dyn TInputProtocol::read_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:870,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:871,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:874,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:877,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:879,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:885,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 71
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 886
      start: 843
    functionDepth: 4
    functionLinenumber: 843
    functionLinenumberEnd: 886
    functionName: RecursiveStruct::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 2
    functionsReached:
    - TBufferedReadTransport::push
    - Some
    - '&mut dyn TInputProtocol::read_i32'
    - '&mut dyn TInputProtocol::read_list_end'
    - '&mut dyn TInputProtocol::read_struct_end'
    - '&mut dyn TInputProtocol::read_list_begin'
    - Box::new
    - thrift::protocol::field_id
    - Ok
    - '&mut dyn TInputProtocol::read_field_end'
    - RecursiveStruct::read_from_in_protocol
    - '&mut dyn TInputProtocol::skip'
    - '&mut dyn TInputProtocol::read_struct_begin'
    - Vec::with_capacity
    - '&mut dyn TInputProtocol::read_field_begin'
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<RecursiveStruct>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:888,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:889,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:891,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:891,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:892,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:893,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:896,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:896,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:897,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:898,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:901,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:901,1
    - Dst: '&mut dyn TOutputProtocol::write_list_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:902,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:902,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:902,1
    - Dst: thrift::Result::write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:904,1
    - Dst: '&mut dyn TOutputProtocol::write_list_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:906,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:907,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:909,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:910,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 75
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 911
      start: 887
    functionDepth: 3
    functionLinenumber: 887
    functionLinenumberEnd: 911
    functionName: RecursiveStruct::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::write_to_out_protocol
    - TListIdentifier::new
    - '&mut dyn TOutputProtocol::write_list_end'
    - '&mut dyn TOutputProtocol::write_list_begin'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - write_to_out_protocol
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    - len
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F5::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:940,1
    - Dst: into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:941,1
    - Dst: F7::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:942,1
    - Dst: F9::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:944,1
    - Dst: F10::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:945,1
    - Dst: F11::into
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 11
    argNames:
    - basic
    - required_test
    - containers
    - union_field
    - recursive
    - empty
    - field_ids
    - enum_field
    - enum_map
    - user_id
    - data
    argTypes:
    - BasicTypes
    - Requiredness
    - Containers
    - TestUnion
    - F5
    - F6
    - F7
    - TestEnum
    - F9
    - F10
    - F11
    constantsTouched: []
    func_position:
      end: 948
      start: 934
    functionDepth: 0
    functionLinenumber: 934
    functionLinenumberEnd: 948
    functionName: FuzzTest::new
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - F9::into
    - into
    - F10::into
    - F7::into
    - F11::into
    - F5::into
    linkageType: ''
    returnType: FuzzTest
    signature: 'pub fn new<F5, F6, F7, F9, F10, F11>(basic: BasicTypes, required_test:
      Requiredness, containers: Containers, union_field: TestUnion, recursive: F5,
      empty: F6, field_ids: F7, enum_field: TestEnum, enum_map: F9, user_id: F10,
      data: F11) -> FuzzTest where F5: Into<Option<RecursiveStruct>>, F6: Into<Option<EmptyStruct>>,
      F7: Into<Option<FieldIDTest>>, F9: Into<Option<BTreeMap<TestEnum, String>>>,
      F10: Into<Option<UserId>>, F11: Into<Option<BinaryData>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:953,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:963,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:964,1
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:964,1
    - Dst: '&mut dyn TInputProtocol::read_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:966,1
    - Dst: thrift::protocol::field_id
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:970,1
    - Dst: BasicTypes::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:973,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:974,1
    - Dst: Requiredness::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:977,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:978,1
    - Dst: Containers::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:981,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:982,1
    - Dst: TestUnion::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:985,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:986,1
    - Dst: RecursiveStruct::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:989,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:990,1
    - Dst: EmptyStruct::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:993,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:994,1
    - Dst: FieldIDTest::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:997,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:998,1
    - Dst: TestEnum::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1001,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1002,1
    - Dst: '&mut dyn TInputProtocol::read_map_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1005,1
    - Dst: BTreeMap::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1006,1
    - Dst: TestEnum::read_from_in_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1008,1
    - Dst: '&mut dyn TInputProtocol::read_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1009,1
    - Dst: SharedStruct::insert
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1010,1
    - Dst: '&mut dyn TInputProtocol::read_map_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1012,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1013,1
    - Dst: '&mut dyn TInputProtocol::read_i64'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1016,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1017,1
    - Dst: '&mut dyn TInputProtocol::read_bytes'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1020,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1021,1
    - Dst: '&mut dyn TInputProtocol::skip'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1024,1
    - Dst: '&mut dyn TInputProtocol::read_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1027,1
    - Dst: '&mut dyn TInputProtocol::read_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1029,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1030,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1031,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1032,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1033,1
    - Dst: thrift::protocol::verify_required_field_exists
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1034,1
    - Dst: None::expect
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1036,1
    - Dst: None::expect
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1037,1
    - Dst: None::expect
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1038,1
    - Dst: None::expect
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1039,1
    - Dst: None::expect
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1043,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1048,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 143
    argCount: 1
    argNames:
    - i_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 1049
      start: 952
    functionDepth: 5
    functionLinenumber: 952
    functionLinenumberEnd: 1049
    functionName: FuzzTest::read_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 1
    functionsReached:
    - Vec::new
    - '&mut dyn TInputProtocol::read_i64'
    - thrift::protocol::field_id
    - EmptyStruct::read_from_in_protocol
    - SharedStruct::insert
    - '&mut dyn TInputProtocol::read_bytes'
    - Containers::read_from_in_protocol
    - thrift::protocol::verify_required_field_exists
    - TestUnion::read_from_in_protocol
    - '&mut dyn TInputProtocol::read_field_end'
    - '&mut dyn TInputProtocol::read_map_begin'
    - FieldIDTest::read_from_in_protocol
    - Some
    - '&mut dyn TInputProtocol::read_string'
    - None::expect
    - '&mut dyn TInputProtocol::read_struct_end'
    - RecursiveStruct::read_from_in_protocol
    - '&mut dyn TInputProtocol::skip'
    - BTreeMap::new
    - '&mut dyn TInputProtocol::read_struct_begin'
    - '&mut dyn TInputProtocol::read_field_begin'
    - TestEnum::read_from_in_protocol
    - '&mut dyn TInputProtocol::read_map_end'
    - Requiredness::read_from_in_protocol
    - Ok
    - BasicTypes::read_from_in_protocol
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result<FuzzTest>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1051,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1052,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1053,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1053,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1054,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1055,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1056,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1056,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1057,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1058,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1059,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1059,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1060,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1061,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1062,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1062,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1063,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1064,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1066,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1066,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1067,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1068,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1071,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1071,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1072,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1073,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1076,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1076,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1077,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1078,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1080,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1080,1
    - Dst: write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1081,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1082,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1084,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1084,1
    - Dst: '&mut dyn TOutputProtocol::write_map_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1085,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1085,1
    - Dst: len
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1085,1
    - Dst: io::Result::write_to_out_protocol
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1087,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1088,1
    - Dst: '&mut dyn TOutputProtocol::write_map_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1090,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1091,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1094,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1094,1
    - Dst: '&mut dyn TOutputProtocol::write_i64'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1095,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1096,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1099,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1099,1
    - Dst: '&mut dyn TOutputProtocol::write_bytes'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1100,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1101,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1103,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs:1104,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 202
    argCount: 1
    argNames:
    - o_prot
    argTypes:
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 1105
      start: 1050
    functionDepth: 3
    functionLinenumber: 1050
    functionLinenumberEnd: 1105
    functionName: FuzzTest::write_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
    functionUses: 0
    functionsReached:
    - io::Result::write_to_out_protocol
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_i64'
    - TMapIdentifier::new
    - '&mut dyn TOutputProtocol::write_bytes'
    - TStructIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_stop'
    - write_to_out_protocol
    - TFieldIdentifier::new
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_map_begin'
    - '&mut dyn TOutputProtocol::write_string'
    - '&mut dyn TOutputProtocol::write_map_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    - len
    linkageType: ''
    returnType: thrift::Result
    signature: 'fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol)
      -> thrift::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/src/errors.rs:198,1
    - Dst: thrift::Result::read_struct_begin
      Src: /src/thrift/lib/rs/src/errors.rs:201,1
    - Dst: thrift::Result::read_field_begin
      Src: /src/thrift/lib/rs/src/errors.rs:204,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/errors.rs:210,1
    - Dst: thrift::Result::read_string
      Src: /src/thrift/lib/rs/src/errors.rs:216,1
    - Dst: thrift::Result::read_field_end
      Src: /src/thrift/lib/rs/src/errors.rs:217,1
    - Dst: thrift::Result::read_i32
      Src: /src/thrift/lib/rs/src/errors.rs:221,1
    - Dst: TryFrom::try_from
      Src: /src/thrift/lib/rs/src/errors.rs:222,1
    - Dst: Result::unwrap_or
      Src: /src/thrift/lib/rs/src/errors.rs:222,1
    - Dst: thrift::Result::read_field_end
      Src: /src/thrift/lib/rs/src/errors.rs:224,1
    - Dst: thrift::Result::skip
      Src: /src/thrift/lib/rs/src/errors.rs:228,1
    - Dst: thrift::Result::read_struct_end
      Src: /src/thrift/lib/rs/src/errors.rs:233,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:235,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 54
    argCount: 1
    argNames:
    - i
    argTypes:
    - '&mut dyn TInputProtocol'
    constantsTouched: []
    func_position:
      end: 236
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 236
    functionName: Error::read_application_error_from_in_protocol
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 6
    functionsReached:
    - thrift::Result::read_struct_begin
    - thrift::Result::read_field_begin
    - thrift::Result::read_field_end
    - TryFrom::try_from
    - thrift::Result::read_struct_end
    - Result::unwrap_or
    - Ok
    - thrift::Result::skip
    - expect
    - '&str::to_owned'
    - thrift::Result::read_i32
    - thrift::Result::read_string
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn read_application_error_from_in_protocol(i: &mut dyn TInputProtocol,)
      -> crate::Result<ApplicationError>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TOutputProtocol::write_struct_begin'
      Src: /src/thrift/lib/rs/src/errors.rs:246,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/src/errors.rs:247,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/errors.rs:250,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/errors.rs:251,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/src/errors.rs:253,1
    - Dst: '&mut dyn TOutputProtocol::write_string'
      Src: /src/thrift/lib/rs/src/errors.rs:254,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/src/errors.rs:255,1
    - Dst: '&mut dyn TOutputProtocol::write_field_begin'
      Src: /src/thrift/lib/rs/src/errors.rs:257,1
    - Dst: '&mut dyn TOutputProtocol::write_i32'
      Src: /src/thrift/lib/rs/src/errors.rs:258,1
    - Dst: '&mut dyn TOutputProtocol::write_field_end'
      Src: /src/thrift/lib/rs/src/errors.rs:259,1
    - Dst: '&mut dyn TOutputProtocol::write_field_stop'
      Src: /src/thrift/lib/rs/src/errors.rs:261,1
    - Dst: '&mut dyn TOutputProtocol::write_struct_end'
      Src: /src/thrift/lib/rs/src/errors.rs:262,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/lib/rs/src/errors.rs:264,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 50
    argCount: 2
    argNames:
    - e
    - o
    argTypes:
    - '&ApplicationError'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 265
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 265
    functionName: Error::write_application_error_to_out_protocol
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 5
    functionsReached:
    - '&mut dyn TOutputProtocol::flush'
    - '&mut dyn TOutputProtocol::write_field_stop'
    - TFieldIdentifier::new
    - '&str::to_owned'
    - '&mut dyn TOutputProtocol::write_field_end'
    - '&mut dyn TOutputProtocol::write_struct_begin'
    - '&mut dyn TOutputProtocol::write_string'
    - '&mut dyn TOutputProtocol::write_struct_end'
    - '&mut dyn TOutputProtocol::write_field_begin'
    - '&mut dyn TOutputProtocol::write_i32'
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn write_application_error_to_out_protocol(e: &ApplicationError,o:
      &mut dyn TOutputProtocol,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Display::fmt
      Src: /src/thrift/lib/rs/src/errors.rs:284,1
    - Dst: Display::fmt
      Src: /src/thrift/lib/rs/src/errors.rs:285,1
    - Dst: Display::fmt
      Src: /src/thrift/lib/rs/src/errors.rs:286,1
    - Dst: Display::fmt
      Src: /src/thrift/lib/rs/src/errors.rs:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 289
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 289
    functionName: Error::fmt
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached:
    - Display::fmt
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Error::Protocol
      Src: /src/thrift/lib/rs/src/errors.rs:455,1
    - Dst: string::FromUtf8Error::to_string
      Src: /src/thrift/lib/rs/src/errors.rs:457,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - err
    argTypes:
    - string::FromUtf8Error
    constantsTouched: []
    func_position:
      end: 459
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 459
    functionName: Error::from
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 1
    functionsReached:
    - string::FromUtf8Error::to_string
    - Error::Protocol
    linkageType: ''
    returnType: Self
    signature: 'fn from(err: string::FromUtf8Error) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Error::Transport
      Src: /src/thrift/lib/rs/src/errors.rs:331,1
    - Dst: TransportError::new
      Src: /src/thrift/lib/rs/src/errors.rs:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - kind
    - message
    argTypes:
    - TransportErrorKind
    - S
    constantsTouched: []
    func_position:
      end: 332
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 332
    functionName: new_transport_error
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 2
    functionsReached:
    - TransportError::new
    - Error::Transport
    linkageType: ''
    returnType: Error
    signature: 'pub fn new_transport_error<S: Into<String>>(kind: TransportErrorKind,
      message: S) -> Error'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: crate::Result::into
      Src: /src/thrift/lib/rs/src/errors.rs:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - kind
    - message
    argTypes:
    - TransportErrorKind
    - S
    constantsTouched: []
    func_position:
      end: 353
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 353
    functionName: TransportError::new
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 1
    functionsReached:
    - crate::Result::into
    linkageType: ''
    returnType: TransportError
    signature: 'pub fn new<S: Into<String>>(kind: TransportErrorKind, message: S)
      -> TransportError'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 391
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 391
    functionName: TransportError::fmt
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:398,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:399,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:400,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:401,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:402,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:403,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:404,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/errors.rs:405,1
    - Dst: Error::Protocol
      Src: /src/thrift/lib/rs/src/errors.rs:405,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - from
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 410
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 410
    functionName: TransportErrorKind::try_from
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached:
    - Error::Protocol
    - Err
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn try_from(from: i32) -> Result<Self, Self::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Error::Protocol
      Src: /src/thrift/lib/rs/src/errors.rs:465,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/errors.rs:465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - kind
    - message
    argTypes:
    - ProtocolErrorKind
    - S
    constantsTouched: []
    func_position:
      end: 466
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 466
    functionName: new_protocol_error
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 1
    functionsReached:
    - ProtocolError::new
    - Error::Protocol
    linkageType: ''
    returnType: Error
    signature: 'pub fn new_protocol_error<S: Into<String>>(kind: ProtocolErrorKind,
      message: S) -> Error'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: crate::Result::into
      Src: /src/thrift/lib/rs/src/errors.rs:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - kind
    - message
    argTypes:
    - ProtocolErrorKind
    - S
    constantsTouched: []
    func_position:
      end: 487
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 487
    functionName: ProtocolError::new
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 10
    functionsReached:
    - crate::Result::into
    linkageType: ''
    returnType: ProtocolError
    signature: 'pub fn new<S: Into<String>>(kind: ProtocolErrorKind, message: S) ->
      ProtocolError'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 533
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 533
    functionName: ProtocolError::fmt
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:540,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:541,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:542,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:543,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:544,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:545,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:546,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:547,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:548,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/errors.rs:549,1
    - Dst: Error::Protocol
      Src: /src/thrift/lib/rs/src/errors.rs:549,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - from
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 554
      start: 538
    functionDepth: 0
    functionLinenumber: 538
    functionLinenumberEnd: 554
    functionName: ProtocolErrorKind::try_from
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached:
    - Error::Protocol
    - Err
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn try_from(from: i32) -> Result<Self, Self::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Error::Application
      Src: /src/thrift/lib/rs/src/errors.rs:560,1
    - Dst: ApplicationError::new
      Src: /src/thrift/lib/rs/src/errors.rs:560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - kind
    - message
    argTypes:
    - ApplicationErrorKind
    - S
    constantsTouched: []
    func_position:
      end: 561
      start: 559
    functionDepth: 1
    functionLinenumber: 559
    functionLinenumberEnd: 561
    functionName: new_application_error
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached:
    - ApplicationError::new
    - Error::Application
    linkageType: ''
    returnType: Error
    signature: 'pub fn new_application_error<S: Into<String>>(kind: ApplicationErrorKind,
      message: S) -> Error'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: crate::Result::into
      Src: /src/thrift/lib/rs/src/errors.rs:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - kind
    - message
    argTypes:
    - ApplicationErrorKind
    - S
    constantsTouched: []
    func_position:
      end: 583
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 583
    functionName: ApplicationError::new
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 15
    functionsReached:
    - crate::Result::into
    linkageType: ''
    returnType: ApplicationError
    signature: 'pub fn new<S: Into<String>>(kind: ApplicationErrorKind, message: S)
      -> ApplicationError'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 636
      start: 620
    functionDepth: 0
    functionLinenumber: 620
    functionLinenumberEnd: 636
    functionName: ApplicationError::fmt
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:643,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:644,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:645,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:646,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:647,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:648,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:649,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:650,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:651,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:652,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/errors.rs:653,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/errors.rs:654,1
    - Dst: Error::Application
      Src: /src/thrift/lib/rs/src/errors.rs:654,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - from
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 659
      start: 641
    functionDepth: 0
    functionLinenumber: 641
    functionLinenumberEnd: 659
    functionName: ApplicationErrorKind::try_from
    functionSourceFile: /src/thrift/lib/rs/src/errors.rs
    functionUses: 0
    functionsReached:
    - Error::Application
    - Err
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn try_from(from: i32) -> Result<Self, Self::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/lib.rs:4,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: assert_success
    functionSourceFile: /src/thrift/lib/rs/src/lib.rs
    functionUses: 63
    functionsReached:
    - unwrap
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 49
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 49
    functionName: TConfiguration::no_limits
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: pub fn no_limits() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: TConfiguration::max_message_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: pub fn max_message_size(&self) -> Option<usize>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: TConfiguration::max_frame_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: pub fn max_frame_size(&self) -> Option<usize>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: TConfiguration::max_recursion_depth
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: pub fn max_recursion_depth(&self) -> Option<usize>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: TConfiguration::max_container_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: pub fn max_container_size(&self) -> Option<usize>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: TConfiguration::max_string_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: pub fn max_string_size(&self) -> Option<usize>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TConfigurationBuilder::default
      Src: /src/thrift/lib/rs/src/configuration.rs:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: TConfiguration::builder
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 9
    functionsReached:
    - TConfigurationBuilder::default
    linkageType: ''
    returnType: TConfigurationBuilder
    signature: pub fn builder() -> TConfigurationBuilder
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:79,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:80,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:81,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 85
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 85
    functionName: TConfiguration::default
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 3
    functionsReached:
    - Some
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - limit
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: TConfigurationBuilder::max_message_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn max_message_size(mut self, limit: Option<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - limit
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: TConfigurationBuilder::max_frame_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn max_frame_size(mut self, limit: Option<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - limit
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: TConfigurationBuilder::max_recursion_depth
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn max_recursion_depth(mut self, limit: Option<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - limit
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: TConfigurationBuilder::max_container_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn max_container_size(mut self, limit: Option<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - limit
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: TConfigurationBuilder::max_string_size
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn max_string_size(mut self, limit: Option<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/thrift/lib/rs/src/configuration.rs:125,1
    - Dst: crate::Error::Application
      Src: /src/thrift/lib/rs/src/configuration.rs:125,1
    - Dst: crate::ApplicationError::new
      Src: /src/thrift/lib/rs/src/configuration.rs:125,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/configuration.rs:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 136
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 136
    functionName: TConfigurationBuilder::build
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached:
    - crate::Error::Application
    - crate::ApplicationError::new
    - Err
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: pub fn build(self) -> crate::Result<TConfiguration>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    - Dst: TConfigurationBuilder::max_message_size
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:146,1
    - Dst: Self::max_frame_size
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:147,1
    - Dst: Option::max_recursion_depth
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:148,1
    - Dst: Option::max_container_size
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:149,1
    - Dst: Option::max_string_size
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:150,1
    - Dst: Option::build
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/configuration.rs:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 159
      start: 144
    functionDepth: 4
    functionLinenumber: 144
    functionLinenumberEnd: 159
    functionName: tests::test_custom_configuration_builder
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached:
    - Self::max_frame_size
    - Option::max_recursion_depth
    - Some
    - Option::max_container_size
    - thrift::Result::unwrap
    - Option::max_string_size
    - TConfigurationBuilder::max_message_size
    - TConfiguration::builder
    - Option::build
    linkageType: ''
    returnType: void
    signature: fn test_custom_configuration_builder()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/configuration.rs:164,1
    - Dst: TConfigurationBuilder::max_frame_size
      Src: /src/thrift/lib/rs/src/configuration.rs:164,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:165,1
    - Dst: Self::max_message_size
      Src: /src/thrift/lib/rs/src/configuration.rs:164,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/configuration.rs:166,1
    - Dst: Option::build
      Src: /src/thrift/lib/rs/src/configuration.rs:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 177
      start: 162
    functionDepth: 4
    functionLinenumber: 162
    functionLinenumberEnd: 177
    functionName: tests::test_invalid_configuration
    functionSourceFile: /src/thrift/lib/rs/src/configuration.rs
    functionUses: 0
    functionsReached:
    - Self::max_message_size
    - Some
    - TConfigurationBuilder::max_frame_size
    - TConfiguration::builder
    - Option::build
    linkageType: ''
    returnType: void
    signature: fn test_invalid_configuration()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - channel
    argTypes:
    - C
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: TBufferedReadTransport::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 5
    functionsReached:
    - TBufferedReadTransport::with_capacity
    linkageType: ''
    returnType: TBufferedReadTransport
    signature: 'pub fn new(channel: C) -> TBufferedReadTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into_boxed_slice
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - read_capacity
    - channel
    argTypes:
    - usize
    - C
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: TBufferedReadTransport::with_capacity
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 6
    functionsReached:
    - into_boxed_slice
    linkageType: ''
    returnType: TBufferedReadTransport
    signature: 'pub fn with_capacity(read_capacity: usize, channel: C) -> TBufferedReadTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:90,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 94
      start: 87
    functionDepth: 2
    functionLinenumber: 87
    functionLinenumberEnd: 94
    functionName: TBufferedReadTransport::get_bytes
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 1
    functionsReached:
    - read
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn get_bytes(&mut self) -> io::Result<&[u8]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - consumed
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: TBufferedReadTransport::consume
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 1
    functionsReached:
    - cmp::min
    linkageType: ''
    returnType: void
    signature: 'fn consume(&mut self, consumed: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferedReadTransport::get_bytes
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:111,1
    - Dst: '&mut [u8]::len'
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:112,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:113,1
    - Dst: len
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:113,1
    - Dst: copy_from_slice
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:114,1
    - Dst: TBufferedReadTransport::consume
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:118,1
    - Dst: '&mut [u8]::len'
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:121,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:126,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 127
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 127
    functionName: TBufferedReadTransport::read
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - TBufferedReadTransport::get_bytes
    - TBufferedReadTransport::consume
    - '&mut [u8]::len'
    - Ok
    - cmp::min
    - copy_from_slice
    - len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: TBufferedReadTransportFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TBufferedReadTransportFactory
    signature: pub fn new() -> TBufferedReadTransportFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:143,1
    - Dst: TBufferedReadTransport::new
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - channel
    argTypes:
    - Box<dyn Read + Send>
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 2
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: TBufferedReadTransportFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - Box::new
    - TBufferedReadTransport::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self, channel: Box<dyn Read + Send>) -> Box<dyn TReadTransport
      + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - channel
    argTypes:
    - C
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 2
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: TBufferedWriteTransport::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 5
    functionsReached:
    - TBufferedWriteTransport::with_capacity
    linkageType: ''
    returnType: TBufferedWriteTransport
    signature: 'pub fn new(channel: C) -> TBufferedWriteTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - write_capacity
    - channel
    argTypes:
    - usize
    - C
    constantsTouched: []
    func_position:
      end: 205
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 205
    functionName: TBufferedWriteTransport::with_capacity
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 3
    functionsReached:
    - Vec::with_capacity
    linkageType: ''
    returnType: TBufferedWriteTransport
    signature: 'pub fn with_capacity(write_capacity: usize, channel: C) -> TBufferedWriteTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&[u8]::is_empty'
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:213,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:217,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:217,1
    - Dst: len
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:217,1
    - Dst: TBufferedWriteTransport::flush
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:220,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:228,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:231,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:233,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 235
      start: 212
    functionDepth: 3
    functionLinenumber: 212
    functionLinenumberEnd: 235
    functionName: TBufferedWriteTransport::write
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - '&[u8]::is_empty'
    - Ok
    - extend_from_slice
    - cmp::min
    - TBufferedWriteTransport::flush
    - '&[u8]::len'
    - len
    linkageType: ''
    returnType: io::Result
    signature: 'fn write(&mut self, buf: &[u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_all
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:238,1
    - Dst: flush
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:239,1
    - Dst: clear
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:240,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:241,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 242
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 242
    functionName: TBufferedWriteTransport::flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 1
    functionsReached:
    - flush
    - clear
    - write_all
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn flush(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 252
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 252
    functionName: TBufferedWriteTransportFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TBufferedWriteTransportFactory
    signature: pub fn new() -> TBufferedWriteTransportFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:258,1
    - Dst: TBufferedWriteTransport::new
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - channel
    argTypes:
    - Box<dyn Write + Send>
    constantsTouched: []
    func_position:
      end: 259
      start: 257
    functionDepth: 3
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionName: TBufferedWriteTransportFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - TBufferedWriteTransport::new
    - Box::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self, channel: Box<dyn Write + Send>) -> Box<dyn TWriteTransport
      + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:271,1
    - Dst: TBufferedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:272,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 278
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 278
    functionName: tests::must_return_zero_if_read_buffer_is_empty
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - TBufferedReadTransport::with_capacity
    - TBufferChannel::with_capacity
    - thrift::Result::read
    linkageType: ''
    returnType: void
    signature: fn must_return_zero_if_read_buffer_is_empty()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:282,1
    - Dst: TBufferedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:283,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 288
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 288
    functionName: tests::must_return_zero_if_caller_reads_into_zero_capacity_buffer
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - TBufferedReadTransport::with_capacity
    - TBufferChannel::with_capacity
    - thrift::Result::read
    linkageType: ''
    returnType: void
    signature: fn must_return_zero_if_caller_reads_into_zero_capacity_buffer()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:292,1
    - Dst: TBufferedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:293,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:295,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:299,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 312
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 312
    functionName: tests::must_return_zero_if_nothing_more_can_be_read
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - TBufferedReadTransport::with_capacity
    - TBufferChannel::with_capacity
    - set_readable_bytes
    - thrift::Result::read
    linkageType: ''
    returnType: void
    signature: fn must_return_zero_if_nothing_more_can_be_read()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:316,1
    - Dst: TBufferedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:317,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:319,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:323,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 335
      start: 315
    functionDepth: 2
    functionLinenumber: 315
    functionLinenumberEnd: 335
    functionName: tests::must_fill_user_buffer_with_only_as_many_bytes_as_available
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - TBufferedReadTransport::with_capacity
    - TBufferChannel::with_capacity
    - set_readable_bytes
    - thrift::Result::read
    linkageType: ''
    returnType: void
    signature: fn must_fill_user_buffer_with_only_as_many_bytes_as_available()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:345,1
    - Dst: TBufferedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:346,1
    - Dst: usize::iter_mut
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:350,1
    - Dst: enumerate
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:350,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:354,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:361,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:371,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:382,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 386
      start: 338
    functionDepth: 2
    functionLinenumber: 338
    functionLinenumberEnd: 386
    functionName: tests::must_read_successfully
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - TBufferedReadTransport::with_capacity
    - set_readable_bytes
    - enumerate
    - TBufferChannel::with_capacity
    - thrift::Result::read
    - usize::iter_mut
    linkageType: ''
    returnType: void
    signature: fn must_read_successfully()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:390,1
    - Dst: TBufferedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:391,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:394,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:400,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 404
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 404
    functionName: tests::must_return_error_when_nothing_can_be_written_to_underlying_channel
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::write
    - TBufferChannel::with_capacity
    - TBufferedWriteTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_return_error_when_nothing_can_be_written_to_underlying_channel()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:352,1
    - Dst: TFramedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:353,1
    - Dst: assert_eq_transport_written_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 359
      start: 351
    functionDepth: 2
    functionLinenumber: 351
    functionLinenumberEnd: 359
    functionName: tests::must_return_zero_if_caller_calls_write_with_empty_buffer
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - assert_eq_transport_written_bytes
    - TFramedWriteTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_return_zero_if_caller_calls_write_with_empty_buffer()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:420,1
    - Dst: TBufferedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:421,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:427,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:431,1
    - Dst: assert_eq_transport_num_written_bytes
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:435,1
    - Dst: assert_eq_transport_written_bytes
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:436,1
    - Dst: empty_write_buffer
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:437,1
    - Dst: assert_eq_transport_written_bytes
      Src: /src/thrift/lib/rs/src/transport/buffered.rs:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 444
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 444
    functionName: tests::must_auto_flush_if_write_buffer_full
    functionSourceFile: /src/thrift/lib/rs/src/transport/buffered.rs
    functionUses: 0
    functionsReached:
    - assert_eq_transport_num_written_bytes
    - assert_eq_transport_written_bytes
    - TBufferChannel::with_capacity
    - TBufferedWriteTransport::with_capacity
    - empty_write_buffer
    - thrift::Result::write
    linkageType: ''
    returnType: void
    signature: fn must_auto_flush_if_write_buffer_full()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:363,1
    - Dst: TFramedWriteTransport::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:364,1
    - Dst: assert_eq_transport_num_written_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:368,1
    - Dst: assert_eq_transport_written_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 378
      start: 362
    functionDepth: 3
    functionLinenumber: 362
    functionLinenumberEnd: 378
    functionName: tests::must_write_to_inner_transport_on_flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - assert_eq_transport_num_written_bytes
    - TBufferChannel::with_capacity
    - assert_eq_transport_written_bytes
    - TFramedWriteTransport::new
    linkageType: ''
    returnType: void
    signature: fn must_write_to_inner_transport_on_flush()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:453,1
    - Dst: TFramedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:454,1
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:461,1
    - Dst: SharedStruct::write_all
      Src: /src/thrift/lib/rs/src/transport/framed.rs:462,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/framed.rs:462,1
    - Dst: SharedStruct::extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/framed.rs:463,1
    - Dst: empty_write_buffer
      Src: /src/thrift/lib/rs/src/transport/framed.rs:469,1
    - Dst: SharedStruct::clear
      Src: /src/thrift/lib/rs/src/transport/framed.rs:475,1
    - Dst: SharedStruct::write_all
      Src: /src/thrift/lib/rs/src/transport/framed.rs:476,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/framed.rs:476,1
    - Dst: SharedStruct::extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/framed.rs:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 481
      start: 450
    functionDepth: 2
    functionLinenumber: 450
    functionLinenumberEnd: 481
    functionName: tests::must_write_successfully_after_flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - Vec::new
    - TBufferChannel::with_capacity
    - SharedStruct::write_all
    - TFramedWriteTransport::with_capacity
    - SharedStruct::extend_from_slice
    - empty_write_buffer
    - SharedStruct::clear
    - unwrap
    linkageType: ''
    returnType: void
    signature: fn must_write_successfully_after_flush()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 83
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionName: TTcpChannel::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: TTcpChannel
    signature: pub fn new() -> TTcpChannel
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:90,1
    - Dst: crate::Result::unwrap_or_default
      Src: /src/thrift/lib/rs/src/transport/socket.rs:90,1
    - Dst: write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:91,1
    - Dst: crate::Result::unwrap_or_default
      Src: /src/thrift/lib/rs/src/transport/socket.rs:91,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - stream
    argTypes:
    - TcpStream
    constantsTouched: []
    func_position:
      end: 98
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 98
    functionName: TTcpChannel::with_stream
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 4
    functionsReached:
    - crate::Result::unwrap_or_default
    - Some
    - read_timeout
    - write_timeout
    linkageType: ''
    returnType: TTcpChannel
    signature: 'pub fn with_stream(stream: TcpStream) -> TTcpChannel'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:103,1
    - Dst: crate::Result::map_err
      Src: /src/thrift/lib/rs/src/transport/socket.rs:103,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 107
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 107
    functionName: TTcpChannel::read_timeout
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - read_timeout
    - Ok
    - crate::Result::map_err
    linkageType: ''
    returnType: crate::Result
    signature: pub fn read_timeout(&self) -> crate::Result<Option<Duration>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:112,1
    - Dst: crate::Result::map_err
      Src: /src/thrift/lib/rs/src/transport/socket.rs:112,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 116
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 116
    functionName: TTcpChannel::write_timeout
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - write_timeout
    - Ok
    - crate::Result::map_err
    linkageType: ''
    returnType: crate::Result
    signature: pub fn write_timeout(&self) -> crate::Result<Option<Duration>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:121,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - timeout
    argTypes:
    - Option<Duration>
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: TTcpChannel::set_read_timeout
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 1
    functionsReached:
    - set_read_timeout
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn set_read_timeout(&mut self, timeout: Option<Duration>) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: set_write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:131,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - timeout
    argTypes:
    - Option<Duration>
    constantsTouched: []
    func_position:
      end: 136
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 136
    functionName: TTcpChannel::set_write_timeout
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 1
    functionsReached:
    - set_write_timeout
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn set_write_timeout(&mut self, timeout: Option<Duration>) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TTcpChannel::set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:144,1
    - Dst: TTcpChannel::set_write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:145,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - read_timeout
    - write_timeout
    argTypes:
    - Option<Duration>
    - Option<Duration>
    constantsTouched: []
    func_position:
      end: 147
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 147
    functionName: TTcpChannel::set_timeouts
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - TTcpChannel::set_write_timeout
    - TTcpChannel::set_read_timeout
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn set_timeouts(&mut self,read_timeout: Option<Duration>,write_timeout:
      Option<Duration>,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:151,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/transport/socket.rs:152,1
    - Dst: new_transport_error
      Src: /src/thrift/lib/rs/src/transport/socket.rs:152,1
    - Dst: TcpStream::connect
      Src: /src/thrift/lib/rs/src/transport/socket.rs:157,1
    - Dst: Result::set_nodelay
      Src: /src/thrift/lib/rs/src/transport/socket.rs:159,1
    - Dst: Result::set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:160,1
    - Dst: Result::set_write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:161,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:162,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:163,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/transport/socket.rs:165,1
    - Dst: From::from
      Src: /src/thrift/lib/rs/src/transport/socket.rs:165,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 1
    argNames:
    - remote_address
    argTypes:
    - A
    constantsTouched: []
    func_position:
      end: 168
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 168
    functionName: TTcpChannel::open
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - is_some
    - Some
    - Result::set_write_timeout
    - From::from
    - Err
    - Ok
    - new_transport_error
    - Result::set_nodelay
    - TcpStream::connect
    - Result::set_read_timeout
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn open<A: ToSocketAddrs>(&mut self, remote_address: A) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TTcpChannel::if_set
      Src: /src/thrift/lib/rs/src/transport/socket.rs:175,1
    - Dst: Result::shutdown
      Src: /src/thrift/lib/rs/src/transport/socket.rs:175,1
    - Dst: io::Result::map_err
      Src: /src/thrift/lib/rs/src/transport/socket.rs:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: TTcpChannel::close
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Result::shutdown
    - TTcpChannel::if_set
    - io::Result::map_err
    linkageType: ''
    returnType: crate::Result
    signature: pub fn close(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: stream_operation
      Src: /src/thrift/lib/rs/src/transport/socket.rs:184,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/transport/socket.rs:186,1
    - Dst: io::Error::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - stream_operation
    argTypes:
    - F
    constantsTouched: []
    func_position:
      end: 191
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 191
    functionName: TTcpChannel::if_set
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 4
    functionsReached:
    - stream_operation
    - io::Error::new
    - Err
    linkageType: ''
    returnType: io::Result
    signature: 'fn if_set<F, T>(&mut self, mut stream_operation: F) -> io::Result<T>whereF:
      FnMut(&mut TcpStream) -> io::Result<T>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_mut
      Src: /src/thrift/lib/rs/src/transport/socket.rs:201,1
    - Dst: and_then
      Src: /src/thrift/lib/rs/src/transport/socket.rs:201,1
    - Dst: Result::try_clone
      Src: /src/thrift/lib/rs/src/transport/socket.rs:203,1
    - Dst: ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:203,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/transport/socket.rs:201,1
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/socket.rs:206,1
    - Dst: and_then
      Src: /src/thrift/lib/rs/src/transport/socket.rs:206,1
    - Dst: thrift::Result::read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:209,1
    - Dst: crate::Result::ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:209,1
    - Dst: unwrap_or
      Src: /src/thrift/lib/rs/src/transport/socket.rs:206,1
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/socket.rs:211,1
    - Dst: and_then
      Src: /src/thrift/lib/rs/src/transport/socket.rs:211,1
    - Dst: thrift::Result::write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:214,1
    - Dst: crate::Result::ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:214,1
    - Dst: unwrap_or
      Src: /src/thrift/lib/rs/src/transport/socket.rs:211,1
    - Dst: ReadHalf::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:217,1
    - Dst: take
      Src: /src/thrift/lib/rs/src/transport/socket.rs:218,1
    - Dst: WriteHalf::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:222,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:223,1
    - Dst: ok_or_else
      Src: /src/thrift/lib/rs/src/transport/socket.rs:201,1
    - Dst: new_transport_error
      Src: /src/thrift/lib/rs/src/transport/socket.rs:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 52
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 235
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 235
    functionName: TTcpChannel::split
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Result::try_clone
    - ok
    - thrift::Result::read_timeout
    - take
    - as_ref
    - Some
    - crate::Result::ok
    - WriteHalf::new
    - unwrap_or
    - new_transport_error
    - ok_or_else
    - and_then
    - thrift::Result::write_timeout
    - ReadHalf::new
    - map
    - as_mut
    linkageType: ''
    returnType: crate::Result
    signature: 'fn split(self) -> crate::Result<(ReadHalf<Self>, WriteHalf<Self>)>whereSelf:
      Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TTcpChannel::if_set
      Src: /src/thrift/lib/rs/src/transport/socket.rs:240,1
    - Dst: Result::read
      Src: /src/thrift/lib/rs/src/transport/socket.rs:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 241
      start: 239
    functionDepth: 3
    functionLinenumber: 239
    functionLinenumberEnd: 241
    functionName: TTcpChannel::read
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Result::read
    - TTcpChannel::if_set
    linkageType: ''
    returnType: io::Result
    signature: 'fn read(&mut self, b: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TTcpChannel::if_set
      Src: /src/thrift/lib/rs/src/transport/socket.rs:246,1
    - Dst: Result::write
      Src: /src/thrift/lib/rs/src/transport/socket.rs:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 4
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: TTcpChannel::write
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Result::write
    - TTcpChannel::if_set
    linkageType: ''
    returnType: io::Result
    signature: 'fn write(&mut self, b: &[u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TTcpChannel::if_set
      Src: /src/thrift/lib/rs/src/transport/socket.rs:250,1
    - Dst: Result::flush
      Src: /src/thrift/lib/rs/src/transport/socket.rs:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: TTcpChannel::flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - TTcpChannel::if_set
    - Result::flush
    linkageType: ''
    returnType: io::Result
    signature: fn flush(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: UnixStream::try_clone
      Src: /src/thrift/lib/rs/src/transport/socket.rs:260,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:260,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/socket.rs:262,1
    - Dst: ReadHalf::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:262,1
    - Dst: WriteHalf::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 263
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 263
    functionName: UnixStream::split
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - UnixStream::try_clone
    - WriteHalf::new
    - Ok
    - unwrap
    - ReadHalf::new
    linkageType: ''
    returnType: crate::Result
    signature: 'fn split(self) -> crate::Result<(ReadHalf<Self>, WriteHalf<Self>)>whereSelf:
      Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TcpListener::bind
      Src: /src/thrift/lib/rs/src/transport/socket.rs:275,1
    - Dst: Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:275,1
    - Dst: local_addr
      Src: /src/thrift/lib/rs/src/transport/socket.rs:276,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 278
      start: 274
    functionDepth: 5
    functionLinenumber: 274
    functionLinenumberEnd: 278
    functionName: tests::listening_address
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - TcpListener::bind
    - local_addr
    - Result::unwrap
    - unwrap
    linkageType: ''
    returnType: (TcpListener, SocketAddr)
    signature: fn listening_address() -> (TcpListener, SocketAddr)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: listening_address
      Src: /src/thrift/lib/rs/src/transport/socket.rs:281,1
    - Dst: thread::spawn
      Src: /src/thrift/lib/rs/src/transport/socket.rs:282,1
    - Dst: accept
      Src: /src/thrift/lib/rs/src/transport/socket.rs:282,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:282,1
    - Dst: TcpStream::connect
      Src: /src/thrift/lib/rs/src/transport/socket.rs:283,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:283,1
    - Dst: join
      Src: /src/thrift/lib/rs/src/transport/socket.rs:284,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 286
      start: 280
    functionDepth: 6
    functionLinenumber: 280
    functionLinenumberEnd: 286
    functionName: tests::connected_streams
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - thread::spawn
    - listening_address
    - join
    - TcpStream::connect
    - unwrap
    - accept
    linkageType: ''
    returnType: (TcpStream, TcpStream)
    signature: fn connected_streams() -> (TcpStream, TcpStream)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: connected_streams
      Src: /src/thrift/lib/rs/src/transport/socket.rs:289,1
    - Dst: TTcpChannel::with_stream
      Src: /src/thrift/lib/rs/src/transport/socket.rs:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 291
      start: 288
    functionDepth: 7
    functionLinenumber: 288
    functionLinenumberEnd: 291
    functionName: tests::wrapped_channel
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - TTcpChannel::with_stream
    - connected_streams
    linkageType: ''
    returnType: (TTcpChannel, TcpStream)
    signature: fn wrapped_channel() -> (TTcpChannel, TcpStream)
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - channel
    - read_timeout
    - write_timeout
    argTypes:
    - '&TTcpChannel'
    - Option<Duration>
    - Option<Duration>
    constantsTouched: []
    func_position:
      end: 300
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 300
    functionName: tests::assert_channel_timeouts
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn assert_channel_timeouts(channel: &TTcpChannel,read_timeout: Option<Duration>,write_timeout:
      Option<Duration>,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/socket.rs:307,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - channel
    - read_timeout
    - write_timeout
    argTypes:
    - '&TTcpChannel'
    - Option<Duration>
    - Option<Duration>
    constantsTouched: []
    func_position:
      end: 310
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 310
    functionName: tests::assert_stream_timeouts
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - unwrap
    - as_ref
    linkageType: ''
    returnType: void
    signature: 'fn assert_stream_timeouts(channel: &TTcpChannel,read_timeout: Option<Duration>,write_timeout:
      Option<Duration>,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:314,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:314,1
    - Dst: TTcpChannel::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:315,1
    - Dst: set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:317,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:317,1
    - Dst: assert_channel_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 320
      start: 313
    functionDepth: 2
    functionLinenumber: 313
    functionLinenumberEnd: 320
    functionName: tests::must_store_read_timeout_before_open
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Some
    - set_read_timeout
    - TTcpChannel::new
    - assert_channel_timeouts
    - Duration::from_millis
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_store_read_timeout_before_open()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:324,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:324,1
    - Dst: listening_address
      Src: /src/thrift/lib/rs/src/transport/socket.rs:325,1
    - Dst: thread::spawn
      Src: /src/thrift/lib/rs/src/transport/socket.rs:326,1
    - Dst: accept
      Src: /src/thrift/lib/rs/src/transport/socket.rs:326,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:326,1
    - Dst: TTcpChannel::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:327,1
    - Dst: set_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:329,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:329,1
    - Dst: open
      Src: /src/thrift/lib/rs/src/transport/socket.rs:330,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:330,1
    - Dst: assert_channel_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:332,1
    - Dst: assert_stream_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:333,1
    - Dst: join
      Src: /src/thrift/lib/rs/src/transport/socket.rs:334,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 335
      start: 323
    functionDepth: 6
    functionLinenumber: 323
    functionLinenumberEnd: 335
    functionName: tests::must_apply_timeouts_when_opening_channel
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Some
    - thread::spawn
    - set_timeouts
    - assert_stream_timeouts
    - TTcpChannel::new
    - crate::Result::unwrap
    - assert_channel_timeouts
    - listening_address
    - join
    - unwrap
    - accept
    - open
    - Duration::from_millis
    linkageType: ''
    returnType: void
    signature: fn must_apply_timeouts_when_opening_channel()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:339,1
    - Dst: listening_address
      Src: /src/thrift/lib/rs/src/transport/socket.rs:340,1
    - Dst: thread::spawn
      Src: /src/thrift/lib/rs/src/transport/socket.rs:341,1
    - Dst: accept
      Src: /src/thrift/lib/rs/src/transport/socket.rs:342,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:342,1
    - Dst: thread::sleep
      Src: /src/thrift/lib/rs/src/transport/socket.rs:343,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:343,1
    - Dst: drop
      Src: /src/thrift/lib/rs/src/transport/socket.rs:344,1
    - Dst: TTcpChannel::new
      Src: /src/thrift/lib/rs/src/transport/socket.rs:346,1
    - Dst: set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:349,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:349,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:349,1
    - Dst: open
      Src: /src/thrift/lib/rs/src/transport/socket.rs:350,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:350,1
    - Dst: read
      Src: /src/thrift/lib/rs/src/transport/socket.rs:352,1
    - Dst: io::Result::unwrap_err
      Src: /src/thrift/lib/rs/src/transport/socket.rs:352,1
    - Dst: join
      Src: /src/thrift/lib/rs/src/transport/socket.rs:358,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 359
      start: 338
    functionDepth: 6
    functionLinenumber: 338
    functionLinenumberEnd: 359
    functionName: tests::must_enforce_read_timeout_set_before_open
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - io::Result::unwrap_err
    - drop
    - Some
    - set_read_timeout
    - thread::spawn
    - read
    - TTcpChannel::new
    - crate::Result::unwrap
    - listening_address
    - join
    - thread::sleep
    - unwrap
    - accept
    - open
    - Duration::from_millis
    linkageType: ''
    returnType: void
    signature: fn must_enforce_read_timeout_set_before_open()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:363,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:363,1
    - Dst: wrapped_channel
      Src: /src/thrift/lib/rs/src/transport/socket.rs:364,1
    - Dst: set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:366,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:366,1
    - Dst: assert_channel_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:368,1
    - Dst: assert_stream_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 370
      start: 362
    functionDepth: 8
    functionLinenumber: 362
    functionLinenumberEnd: 370
    functionName: tests::must_set_read_timeout_on_wrapped_stream
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Some
    - set_read_timeout
    - assert_stream_timeouts
    - assert_channel_timeouts
    - wrapped_channel
    - Duration::from_millis
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_set_read_timeout_on_wrapped_stream()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:374,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:374,1
    - Dst: wrapped_channel
      Src: /src/thrift/lib/rs/src/transport/socket.rs:375,1
    - Dst: set_write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:377,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:377,1
    - Dst: assert_channel_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:379,1
    - Dst: assert_stream_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 381
      start: 373
    functionDepth: 8
    functionLinenumber: 373
    functionLinenumberEnd: 381
    functionName: tests::must_set_write_timeout_on_wrapped_stream
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - set_write_timeout
    - Some
    - assert_stream_timeouts
    - assert_channel_timeouts
    - wrapped_channel
    - Duration::from_millis
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_set_write_timeout_on_wrapped_stream()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:385,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:385,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:386,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:386,1
    - Dst: wrapped_channel
      Src: /src/thrift/lib/rs/src/transport/socket.rs:387,1
    - Dst: set_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:389,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:389,1
    - Dst: assert_channel_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:391,1
    - Dst: assert_stream_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 393
      start: 384
    functionDepth: 8
    functionLinenumber: 384
    functionLinenumberEnd: 393
    functionName: tests::must_set_both_timeouts_on_wrapped_stream
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Some
    - set_timeouts
    - assert_stream_timeouts
    - assert_channel_timeouts
    - wrapped_channel
    - Duration::from_millis
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_set_both_timeouts_on_wrapped_stream()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:397,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:397,1
    - Dst: wrapped_channel
      Src: /src/thrift/lib/rs/src/transport/socket.rs:398,1
    - Dst: set_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:400,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:400,1
    - Dst: set_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:401,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:401,1
    - Dst: assert_channel_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:403,1
    - Dst: assert_stream_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 405
      start: 396
    functionDepth: 8
    functionLinenumber: 396
    functionLinenumberEnd: 405
    functionName: tests::must_clear_timeouts_on_wrapped_stream
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Some
    - set_timeouts
    - assert_stream_timeouts
    - assert_channel_timeouts
    - wrapped_channel
    - Duration::from_millis
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_clear_timeouts_on_wrapped_stream()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:409,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:409,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:410,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:410,1
    - Dst: connected_streams
      Src: /src/thrift/lib/rs/src/transport/socket.rs:411,1
    - Dst: thrift::Result::set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:413,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:413,1
    - Dst: thrift::Result::set_write_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:414,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:414,1
    - Dst: TTcpChannel::with_stream
      Src: /src/thrift/lib/rs/src/transport/socket.rs:415,1
    - Dst: assert_channel_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:417,1
    - Dst: assert_stream_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 419
      start: 408
    functionDepth: 7
    functionLinenumber: 408
    functionLinenumberEnd: 419
    functionName: tests::must_store_timeouts_from_wrapped_stream
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::set_read_timeout
    - Some
    - assert_stream_timeouts
    - assert_channel_timeouts
    - TTcpChannel::with_stream
    - connected_streams
    - Duration::from_millis
    - thrift::Result::set_write_timeout
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_store_timeouts_from_wrapped_stream()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:424,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:424,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:425,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:425,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/transport/socket.rs:426,1
    - Dst: Duration::from_millis
      Src: /src/thrift/lib/rs/src/transport/socket.rs:426,1
    - Dst: wrapped_channel
      Src: /src/thrift/lib/rs/src/transport/socket.rs:427,1
    - Dst: set_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:429,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:429,1
    - Dst: split
      Src: /src/thrift/lib/rs/src/transport/socket.rs:430,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:430,1
    - Dst: set_read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:432,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:432,1
    - Dst: read_timeout
      Src: /src/thrift/lib/rs/src/transport/socket.rs:435,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:435,1
    - Dst: set_timeouts
      Src: /src/thrift/lib/rs/src/transport/socket.rs:439,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/socket.rs:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 443
      start: 423
    functionDepth: 8
    functionLinenumber: 423
    functionLinenumberEnd: 443
    functionName: tests::split_halves_must_not_clobber_each_others_timeout
    functionSourceFile: /src/thrift/lib/rs/src/transport/socket.rs
    functionUses: 0
    functionsReached:
    - Some
    - set_read_timeout
    - read_timeout
    - set_timeouts
    - split
    - wrapped_channel
    - unwrap
    - Duration::from_millis
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn split_halves_must_not_clobber_each_others_timeout()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TFramedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - channel
    argTypes:
    - C
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: TFramedReadTransport::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 3
    functionsReached:
    - TFramedReadTransport::with_capacity
    linkageType: ''
    returnType: TFramedReadTransport
    signature: 'pub fn new(channel: C) -> TFramedReadTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TConfiguration::default
      Src: /src/thrift/lib/rs/src/transport/framed.rs:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read_capacity
    - channel
    argTypes:
    - usize
    - C
    constantsTouched: []
    func_position:
      end: 88
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionName: TFramedReadTransport::with_capacity
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 4
    functionsReached:
    - TConfiguration::default
    linkageType: ''
    returnType: TFramedReadTransport
    signature: 'pub fn with_capacity(read_capacity: usize, channel: C) -> TFramedReadTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: chan.read_i32::<BigEndian>
      Src: /src/thrift/lib/rs/src/transport/framed.rs:97,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/transport/framed.rs:100,1
    - Dst: io::Error::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:100,1
    - Dst: max_frame_size
      Src: /src/thrift/lib/rs/src/transport/framed.rs:108,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/transport/framed.rs:110,1
    - Dst: io::Error::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:110,1
    - Dst: cmp::max
      Src: /src/thrift/lib/rs/src/transport/framed.rs:120,1
    - Dst: resize
      Src: /src/thrift/lib/rs/src/transport/framed.rs:121,1
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/transport/framed.rs:123,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/framed.rs:128,1
    - Dst: '&mut [u8]::len'
      Src: /src/thrift/lib/rs/src/transport/framed.rs:128,1
    - Dst: clone_from_slice
      Src: /src/thrift/lib/rs/src/transport/framed.rs:129,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/framed.rs:132,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 71
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 133
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 133
    functionName: TFramedReadTransport::read
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - read_exact
    - max_frame_size
    - clone_from_slice
    - cmp::max
    - '&mut [u8]::len'
    - Err
    - Ok
    - cmp::min
    - chan.read_i32::<BigEndian>
    - resize
    - io::Error::new
    linkageType: ''
    returnType: io::Result
    signature: 'fn read(&mut self, b: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: TFramedReadTransportFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TFramedReadTransportFactory
    signature: pub fn new() -> TFramedReadTransportFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:149,1
    - Dst: TFramedReadTransport::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - channel
    argTypes:
    - Box<dyn Read + Send>
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: TFramedReadTransportFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - TFramedReadTransport::new
    - Box::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self, channel: Box<dyn Read + Send>) -> Box<dyn TReadTransport
      + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TFramedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - channel
    argTypes:
    - C
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: TFramedWriteTransport::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 4
    functionsReached:
    - TFramedWriteTransport::with_capacity
    linkageType: ''
    returnType: TFramedWriteTransport
    signature: 'pub fn new(channel: C) -> TFramedWriteTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - write_capacity
    - channel
    argTypes:
    - usize
    - C
    constantsTouched: []
    func_position:
      end: 202
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 202
    functionName: TFramedWriteTransport::with_capacity
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 7
    functionsReached:
    - Vec::with_capacity
    linkageType: ''
    returnType: TFramedWriteTransport
    signature: 'pub fn with_capacity(write_capacity: usize, channel: C) -> TFramedWriteTransport<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:210,1
    - Dst: len
      Src: /src/thrift/lib/rs/src/transport/framed.rs:211,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/transport/framed.rs:212,1
    - Dst: cmp::max
      Src: /src/thrift/lib/rs/src/transport/framed.rs:213,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/transport/framed.rs:213,1
    - Dst: reserve
      Src: /src/thrift/lib/rs/src/transport/framed.rs:214,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/framed.rs:217,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/framed.rs:218,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/transport/framed.rs:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 219
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 219
    functionName: TFramedWriteTransport::write
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - capacity
    - cmp::max
    - Ok
    - extend_from_slice
    - reserve
    - '&[u8]::len'
    - len
    linkageType: ''
    returnType: io::Result
    signature: 'fn write(&mut self, b: &[u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/thrift/lib/rs/src/transport/framed.rs:222,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/framed.rs:225,1
    - Dst: channel.write_i32::<BigEndian>
      Src: /src/thrift/lib/rs/src/transport/framed.rs:227,1
    - Dst: write
      Src: /src/thrift/lib/rs/src/transport/framed.rs:233,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/framed.rs:234,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/framed.rs:237,1
    - Dst: capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:237,1
    - Dst: resize
      Src: /src/thrift/lib/rs/src/transport/framed.rs:238,1
    - Dst: clear
      Src: /src/thrift/lib/rs/src/transport/framed.rs:239,1
    - Dst: flush
      Src: /src/thrift/lib/rs/src/transport/framed.rs:241,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 242
      start: 221
    functionDepth: 4
    functionLinenumber: 221
    functionLinenumberEnd: 242
    functionName: TFramedWriteTransport::flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - capacity
    - write
    - flush
    - clear
    - Ok
    - cmp::min
    - channel.write_i32::<BigEndian>
    - resize
    - len
    linkageType: ''
    returnType: io::Result
    signature: fn flush(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 252
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 252
    functionName: TFramedWriteTransportFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TFramedWriteTransportFactory
    signature: pub fn new() -> TFramedWriteTransportFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:258,1
    - Dst: TFramedWriteTransport::new
      Src: /src/thrift/lib/rs/src/transport/framed.rs:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - channel
    argTypes:
    - Box<dyn Write + Send>
    constantsTouched: []
    func_position:
      end: 259
      start: 257
    functionDepth: 3
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionName: TFramedWriteTransportFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - TFramedWriteTransport::new
    - Box::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self, channel: Box<dyn Write + Send>) -> Box<dyn TWriteTransport
      + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:271,1
    - Dst: TFramedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:272,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 284
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 284
    functionName: tests::must_read_message_smaller_than_initial_buffer_size
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - set_readable_bytes
    - TFramedReadTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_read_message_smaller_than_initial_buffer_size()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:288,1
    - Dst: TFramedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:289,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 301
      start: 287
    functionDepth: 2
    functionLinenumber: 287
    functionLinenumberEnd: 301
    functionName: tests::must_read_message_greater_than_initial_buffer_size
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - set_readable_bytes
    - TFramedReadTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_read_message_greater_than_initial_buffer_size()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:305,1
    - Dst: TFramedReadTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:306,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:312,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 337
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 337
    functionName: tests::must_read_multiple_messages_in_sequence_correctly
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - set_readable_bytes
    - TFramedReadTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_read_multiple_messages_in_sequence_correctly()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:341,1
    - Dst: TFramedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 348
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 348
    functionName: tests::must_write_message_smaller_than_buffer_size
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - TFramedWriteTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_write_message_smaller_than_buffer_size()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:382,1
    - Dst: TFramedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:389,1
    - Dst: assert_eq_transport_num_written_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:394,1
    - Dst: assert_eq_transport_written_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 404
      start: 381
    functionDepth: 2
    functionLinenumber: 381
    functionLinenumberEnd: 404
    functionName: tests::must_write_message_greater_than_buffer_size_00
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - assert_eq_transport_num_written_bytes
    - TBufferChannel::with_capacity
    - assert_eq_transport_written_bytes
    - TFramedWriteTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_write_message_greater_than_buffer_size_00()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:408,1
    - Dst: TFramedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:415,1
    - Dst: assert_eq_transport_num_written_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:420,1
    - Dst: assert_eq_transport_written_bytes
      Src: /src/thrift/lib/rs/src/transport/framed.rs:429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 430
      start: 407
    functionDepth: 2
    functionLinenumber: 407
    functionLinenumberEnd: 430
    functionName: tests::must_write_message_greater_than_buffer_size_01
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - assert_eq_transport_num_written_bytes
    - TBufferChannel::with_capacity
    - assert_eq_transport_written_bytes
    - TFramedWriteTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_write_message_greater_than_buffer_size_01()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:434,1
    - Dst: TFramedWriteTransport::with_capacity
      Src: /src/thrift/lib/rs/src/transport/framed.rs:435,1
    - Dst: thrift::Result::flush
      Src: /src/thrift/lib/rs/src/transport/framed.rs:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 447
      start: 433
    functionDepth: 2
    functionLinenumber: 433
    functionLinenumberEnd: 447
    functionName: tests::must_return_error_if_nothing_can_be_written_to_inner_transport_on_flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/framed.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::flush
    - TBufferChannel::with_capacity
    - TFramedWriteTransport::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_return_error_if_nothing_can_be_written_to_inner_transport_on_flush()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: assert_eq_transport_num_written_bytes
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: assert_eq_transport_written_bytes
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - transport
    argTypes:
    - Box<dyn TWriteTransport + Send>
    constantsTouched: []
    func_position:
      end: 627
      start: 622
    functionDepth: 3
    functionLinenumber: 622
    functionLinenumberEnd: 627
    functionName: Box::create
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - create
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self,transport: Box<dyn TWriteTransport + Send>,) -> Box<dyn
      TOutputProtocol + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - handle
    argTypes:
    - C
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: ReadHalf::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: ReadHalf
    signature: 'pub fn new(handle: C) -> ReadHalf<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - handle
    argTypes:
    - C
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: WriteHalf::new
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: WriteHalf
    signature: 'pub fn new(handle: C) -> WriteHalf<C>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read
      Src: /src/thrift/lib/rs/src/transport/mod.rs:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 3
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: ReadHalf::read
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - read
    linkageType: ''
    returnType: io::Result
    signature: 'fn read(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write
      Src: /src/thrift/lib/rs/src/transport/mod.rs:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 4
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: WriteHalf::write
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - write
    linkageType: ''
    returnType: io::Result
    signature: 'fn write(&mut self, buf: &[u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: flush
      Src: /src/thrift/lib/rs/src/transport/mod.rs:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: WriteHalf::flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - flush
    linkageType: ''
    returnType: io::Result
    signature: fn flush(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: ReadHalf::deref
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&Self::Target'
    signature: fn deref(&self) -> &Self::Target
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: ReadHalf::deref_mut
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut C'
    signature: fn deref_mut(&mut self) -> &mut C
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 212
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionName: WriteHalf::deref
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&Self::Target'
    signature: fn deref(&self) -> &Self::Target
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 221
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionName: WriteHalf::deref_mut
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut C'
    signature: fn deref_mut(&mut self) -> &mut C
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:233,1
    - Dst: TBufferedReadTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 235
      start: 232
    functionDepth: 2
    functionLinenumber: 232
    functionLinenumberEnd: 235
    functionName: tests::must_create_usable_read_channel_from_concrete_read_type
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - Cursor::new
    - TBufferedReadTransport::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_read_channel_from_concrete_read_type()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:239,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:239,1
    - Dst: TBufferedReadTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 2
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: tests::must_create_usable_read_channel_from_boxed_read
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - Cursor::new
    - Box::new
    - TBufferedReadTransport::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_read_channel_from_boxed_read()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferedWriteTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 3
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: tests::must_create_usable_write_channel_from_concrete_write_type
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - TBufferedWriteTransport::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_write_channel_from_concrete_write_type()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:251,1
    - Dst: TBufferedWriteTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 3
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: tests::must_create_usable_write_channel_from_boxed_write
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - TBufferedWriteTransport::new
    - Box::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_write_channel_from_boxed_write()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:257,1
    - Dst: TBufferedReadTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:258,1
    - Dst: takes_read_transport
      Src: /src/thrift/lib/rs/src/transport/mod.rs:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 260
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 260
    functionName: tests::must_create_usable_read_transport_from_concrete_read_transport
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - Cursor::new
    - takes_read_transport
    - TBufferedReadTransport::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_read_transport_from_concrete_read_transport()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:264,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:265,1
    - Dst: TBufferedReadTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:265,1
    - Dst: takes_read_transport
      Src: /src/thrift/lib/rs/src/transport/mod.rs:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 267
      start: 263
    functionDepth: 2
    functionLinenumber: 263
    functionLinenumberEnd: 267
    functionName: tests::must_create_usable_read_transport_from_boxed_read
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - Cursor::new
    - takes_read_transport
    - Box::new
    - TBufferedReadTransport::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_read_transport_from_boxed_read()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferedWriteTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:272,1
    - Dst: takes_write_transport
      Src: /src/thrift/lib/rs/src/transport/mod.rs:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 274
      start: 270
    functionDepth: 3
    functionLinenumber: 270
    functionLinenumberEnd: 274
    functionName: tests::must_create_usable_write_transport_from_concrete_write_transport
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - takes_write_transport
    - TBufferedWriteTransport::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_write_transport_from_concrete_write_transport()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:279,1
    - Dst: TBufferedWriteTransport::new
      Src: /src/thrift/lib/rs/src/transport/mod.rs:279,1
    - Dst: takes_write_transport
      Src: /src/thrift/lib/rs/src/transport/mod.rs:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 281
      start: 277
    functionDepth: 3
    functionLinenumber: 277
    functionLinenumberEnd: 281
    functionName: tests::must_create_usable_write_transport_from_boxed_write
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - takes_write_transport
    - TBufferedWriteTransport::new
    - Box::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_write_transport_from_boxed_write()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: thrift::Result::bytes
      Src: /src/thrift/lib/rs/src/transport/mod.rs:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - '&mut R'
    constantsTouched: []
    func_position:
      end: 288
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 288
    functionName: tests::takes_read_transport
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::bytes
    linkageType: ''
    returnType: void
    signature: 'fn takes_read_transport<R>(t: &mut R)whereR: TReadTransport,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: thrift::Result::flush
      Src: /src/thrift/lib/rs/src/transport/mod.rs:294,1
    - Dst: io::Result::unwrap
      Src: /src/thrift/lib/rs/src/transport/mod.rs:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - '&mut W'
    constantsTouched: []
    func_position:
      end: 295
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 295
    functionName: tests::takes_write_transport
    functionSourceFile: /src/thrift/lib/rs/src/transport/mod.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::flush
    - io::Result::unwrap
    linkageType: ''
    returnType: void
    signature: 'fn takes_write_transport<W>(t: &mut W)whereW: TWriteTransport,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/transport/mem.rs:60,1
    - Dst: Mutex::new
      Src: /src/thrift/lib/rs/src/transport/mem.rs:60,1
    - Dst: into_boxed_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:61,1
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/transport/mem.rs:66,1
    - Dst: Mutex::new
      Src: /src/thrift/lib/rs/src/transport/mem.rs:66,1
    - Dst: into_boxed_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - read_capacity
    - write_capacity
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 72
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 72
    functionName: TBufferChannel::with_capacity
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 38
    functionsReached:
    - Arc::new
    - Mutex::new
    - into_boxed_slice
    linkageType: ''
    returnType: TBufferChannel
    signature: 'pub fn with_capacity(read_capacity: usize, write_capacity: usize)
      -> TBufferChannel'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:77,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:77,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:77,1
    - Dst: copy_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: TBufferChannel::read_bytes
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - unwrap
    - copy_from_slice
    - lock
    - as_ref
    linkageType: ''
    returnType: Vec
    signature: pub fn read_bytes(&self) -> Vec<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:89,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:89,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: TBufferChannel::empty_read_buffer
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 1
    functionsReached:
    - unwrap
    - lock
    - as_ref
    linkageType: ''
    returnType: void
    signature: pub fn empty_read_buffer(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::empty_read_buffer
      Src: /src/thrift/lib/rs/src/transport/mem.rs:98,1
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:99,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:99,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:99,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/mem.rs:100,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/transport/mem.rs:100,1
    - Dst: clone_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: TBufferChannel::set_readable_bytes
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 2
    functionsReached:
    - as_ref
    - clone_from_slice
    - TBufferChannel::empty_read_buffer
    - lock
    - cmp::min
    - unwrap
    - '&[u8]::len'
    linkageType: ''
    returnType: usize
    signature: 'pub fn set_readable_bytes(&mut self, buf: &[u8]) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:109,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:109,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:109,1
    - Dst: copy_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 113
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionName: TBufferChannel::write_bytes
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 1
    functionsReached:
    - unwrap
    - copy_from_slice
    - lock
    - as_ref
    linkageType: ''
    returnType: Vec
    signature: pub fn write_bytes(&self) -> Vec<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:118,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:118,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: TBufferChannel::empty_write_buffer
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 1
    functionsReached:
    - unwrap
    - lock
    - as_ref
    linkageType: ''
    returnType: void
    signature: pub fn empty_write_buffer(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:127,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:127,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:127,1
    - Dst: copy_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:130,1
    - Dst: TBufferChannel::set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/mem.rs:134,1
    - Dst: TBufferChannel::empty_write_buffer
      Src: /src/thrift/lib/rs/src/transport/mem.rs:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: TBufferChannel::copy_write_buffer_to_read_buffer
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - as_ref
    - TBufferChannel::empty_write_buffer
    - lock
    - TBufferChannel::set_readable_bytes
    - unwrap
    - copy_from_slice
    linkageType: ''
    returnType: void
    signature: pub fn copy_write_buffer_to_read_buffer(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/mem.rs:146,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/transport/mem.rs:149,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/transport/mem.rs:150,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/transport/mem.rs:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 162
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 162
    functionName: TBufferChannel::split
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 8
    functionsReached:
    - clone
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'fn split(self) -> crate::Result<(ReadHalf<Self>, WriteHalf<Self>)>whereSelf:
      Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:167,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:167,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:167,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/mem.rs:168,1
    - Dst: '&mut [u8]::len'
      Src: /src/thrift/lib/rs/src/transport/mem.rs:168,1
    - Dst: clone_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:169,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/mem.rs:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 28
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 172
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 172
    functionName: TBufferChannel::read
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - as_ref
    - clone_from_slice
    - '&mut [u8]::len'
    - Ok
    - lock
    - cmp::min
    - unwrap
    linkageType: ''
    returnType: io::Result
    signature: 'fn read(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/thrift/lib/rs/src/transport/mem.rs:177,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/transport/mem.rs:177,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/transport/mem.rs:177,1
    - Dst: cmp::min
      Src: /src/thrift/lib/rs/src/transport/mem.rs:178,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/transport/mem.rs:178,1
    - Dst: clone_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:180,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/mem.rs:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 29
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 183
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 183
    functionName: TBufferChannel::write
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - as_ref
    - clone_from_slice
    - Ok
    - lock
    - cmp::min
    - unwrap
    - '&[u8]::len'
    linkageType: ''
    returnType: io::Result
    signature: 'fn write(&mut self, buf: &[u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/transport/mem.rs:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: TBufferChannel::flush
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn flush(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:198,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:201,1
    - Dst: thrift::Result::empty_write_buffer
      Src: /src/thrift/lib/rs/src/transport/mem.rs:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 207
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 207
    functionName: tests::must_empty_write_buffer
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - thrift::Result::write
    - thrift::Result::empty_write_buffer
    linkageType: ''
    returnType: void
    signature: fn must_empty_write_buffer()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:211,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:216,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:221,1
    - Dst: thrift::Result::empty_write_buffer
      Src: /src/thrift/lib/rs/src/transport/mem.rs:226,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 233
      start: 210
    functionDepth: 2
    functionLinenumber: 210
    functionLinenumberEnd: 233
    functionName: tests::must_accept_writes_after_buffer_emptied
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - thrift::Result::write
    - thrift::Result::empty_write_buffer
    linkageType: ''
    returnType: void
    signature: fn must_accept_writes_after_buffer_emptied()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:237,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:241,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:247,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:253,1
    - Dst: thrift::Result::write
      Src: /src/thrift/lib/rs/src/transport/mem.rs:259,1
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:263,1
    - Dst: TBufferedReadTransport::extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:264,1
    - Dst: TBufferedReadTransport::extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:265,1
    - Dst: TBufferedReadTransport::extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 268
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 268
    functionName: tests::must_accept_multiple_writes_until_buffer_is_full
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - TBufferedReadTransport::extend_from_slice
    - TBufferChannel::with_capacity
    - thrift::Result::write
    - Vec::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_accept_multiple_writes_until_buffer_is_full()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:272,1
    - Dst: thrift::Result::set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/mem.rs:275,1
    - Dst: thrift::Result::empty_read_buffer
      Src: /src/thrift/lib/rs/src/transport/mem.rs:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 281
      start: 271
    functionDepth: 2
    functionLinenumber: 271
    functionLinenumberEnd: 281
    functionName: tests::must_empty_read_buffer
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::empty_read_buffer
    - thrift::Result::set_readable_bytes
    - TBufferChannel::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_empty_read_buffer()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:285,1
    - Dst: thrift::Result::set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/mem.rs:288,1
    - Dst: thrift::Result::empty_read_buffer
      Src: /src/thrift/lib/rs/src/transport/mem.rs:292,1
    - Dst: thrift::Result::set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/mem.rs:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 299
      start: 284
    functionDepth: 2
    functionLinenumber: 284
    functionLinenumberEnd: 299
    functionName: tests::must_allow_readable_bytes_to_be_set_after_read_buffer_emptied
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::empty_read_buffer
    - thrift::Result::set_readable_bytes
    - TBufferChannel::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_allow_readable_bytes_to_be_set_after_read_buffer_emptied()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:303,1
    - Dst: thrift::Result::set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/mem.rs:308,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/mem.rs:314,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/mem.rs:320,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/mem.rs:326,1
    - Dst: truncate
      Src: /src/thrift/lib/rs/src/transport/mem.rs:328,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/mem.rs:333,1
    - Dst: truncate
      Src: /src/thrift/lib/rs/src/transport/mem.rs:335,1
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:338,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:339,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:340,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:341,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 50
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 344
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 344
    functionName: tests::must_accept_multiple_reads_until_all_bytes_read
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - extend_from_slice
    - thrift::Result::read
    - thrift::Result::set_readable_bytes
    - Vec::with_capacity
    - truncate
    linkageType: ''
    returnType: void
    signature: fn must_accept_multiple_reads_until_all_bytes_read()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:348,1
    - Dst: thrift::Result::set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/mem.rs:353,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/mem.rs:360,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/mem.rs:365,1
    - Dst: Vec::with_capacity
      Src: /src/thrift/lib/rs/src/transport/mem.rs:369,1
    - Dst: TBufferedReadTransport::extend_from_slice
      Src: /src/thrift/lib/rs/src/transport/mem.rs:370,1
    - Dst: TBufferedReadTransport::push
      Src: /src/thrift/lib/rs/src/transport/mem.rs:371,1
    - Dst: thrift::Result::set_readable_bytes
      Src: /src/thrift/lib/rs/src/transport/mem.rs:378,1
    - Dst: thrift::Result::read
      Src: /src/thrift/lib/rs/src/transport/mem.rs:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 386
      start: 347
    functionDepth: 2
    functionLinenumber: 347
    functionLinenumberEnd: 386
    functionName: tests::must_allow_reads_to_succeed_after_read_buffer_replenished
    functionSourceFile: /src/thrift/lib/rs/src/transport/mem.rs
    functionUses: 0
    functionsReached:
    - TBufferChannel::with_capacity
    - thrift::Result::read
    - TBufferedReadTransport::extend_from_slice
    - thrift::Result::set_readable_bytes
    - Vec::with_capacity
    - TBufferedReadTransport::push
    linkageType: ''
    returnType: void
    signature: fn must_allow_reads_to_succeed_after_read_buffer_replenished()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TMessageIdentifier::into
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - wrapped
    - message_ident
    argTypes:
    - '&mut dyn TInputProtocol'
    - TMessageIdentifier
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: TStoredInputProtocol::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 1
    functionsReached:
    - TMessageIdentifier::into
    linkageType: ''
    returnType: TStoredInputProtocol
    signature: 'pub fn new(wrapped: &mut dyn TInputProtocol,message_ident: TMessageIdentifier,)
      -> TStoredInputProtocol<''_>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:109,1
    - Dst: ok_or_else
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:109,1
    - Dst: crate::errors::new_protocol_error
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 115
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 115
    functionName: TStoredInputProtocol::read_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - take
    - ok_or_else
    - crate::errors::new_protocol_error
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_begin(&mut self) -> crate::Result<TMessageIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_message_end
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: TStoredInputProtocol::read_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_message_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: TStoredInputProtocol::read_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_struct_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_begin(&mut self) -> crate::Result<Option<TStructIdentifier>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_struct_end
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: TStoredInputProtocol::read_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_struct_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_field_begin
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: TStoredInputProtocol::read_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_field_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_begin(&mut self) -> crate::Result<TFieldIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_field_end
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: TStoredInputProtocol::read_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_field_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_bytes
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: TStoredInputProtocol::read_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_bytes
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bytes(&mut self) -> crate::Result<Vec<u8>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_bool
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: TStoredInputProtocol::read_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_bool
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bool(&mut self) -> crate::Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i8
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 147
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionName: TStoredInputProtocol::read_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_i8
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i8(&mut self) -> crate::Result<i8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i16
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: TStoredInputProtocol::read_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_i16
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i16(&mut self) -> crate::Result<i16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i32
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: TStoredInputProtocol::read_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_i32
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i32(&mut self) -> crate::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i64
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: TStoredInputProtocol::read_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_i64
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i64(&mut self) -> crate::Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_double
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: TStoredInputProtocol::read_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_double
    linkageType: ''
    returnType: crate::Result
    signature: fn read_double(&mut self) -> crate::Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_uuid
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: TStoredInputProtocol::read_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_uuid
    linkageType: ''
    returnType: crate::Result
    signature: fn read_uuid(&mut self) -> crate::Result<uuid::Uuid>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: TStoredInputProtocol::read_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_string
    linkageType: ''
    returnType: crate::Result
    signature: fn read_string(&mut self) -> crate::Result<String>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: TStoredInputProtocol::read_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_list_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_begin(&mut self) -> crate::Result<TListIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_list_end
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: TStoredInputProtocol::read_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_list_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_set_begin
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: TStoredInputProtocol::read_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_set_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_begin(&mut self) -> crate::Result<TSetIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_set_end
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: TStoredInputProtocol::read_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_set_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_map_begin
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: TStoredInputProtocol::read_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_map_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_begin(&mut self) -> crate::Result<TMapIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_map_end
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: TStoredInputProtocol::read_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_map_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_byte
      Src: /src/thrift/lib/rs/src/protocol/stored.rs:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 202
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionName: TStoredInputProtocol::read_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/stored.rs
    functionUses: 0
    functionsReached:
    - read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_byte(&mut self) -> crate::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_owned
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - service_name
    - wrapped
    argTypes:
    - '&str'
    - P
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: TMultiplexedOutputProtocol::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - to_owned
    linkageType: ''
    returnType: TMultiplexedOutputProtocol
    signature: 'pub fn new(service_name: &str, wrapped: P) -> TMultiplexedOutputProtocol<P>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_message_begin
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:93,1
    - Dst: write_message_begin
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMessageIdentifier'
    constantsTouched: []
    func_position:
      end: 97
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 97
    functionName: TMultiplexedOutputProtocol::write_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_message_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_message_begin(&mut self, identifier: &TMessageIdentifier)
      -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_message_end
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: TMultiplexedOutputProtocol::write_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_message_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TStructIdentifier'
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: TMultiplexedOutputProtocol::write_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_struct_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_struct_begin(&mut self, identifier: &TStructIdentifier) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_struct_end
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: TMultiplexedOutputProtocol::write_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_struct_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_field_begin
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TFieldIdentifier'
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: TMultiplexedOutputProtocol::write_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_field_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_field_begin(&mut self, identifier: &TFieldIdentifier) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_field_end
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: TMultiplexedOutputProtocol::write_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_field_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_field_stop
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: TMultiplexedOutputProtocol::write_field_stop
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_field_stop
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_stop(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_bytes
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: TMultiplexedOutputProtocol::write_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_bytes
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bytes(&mut self, b: &[u8]) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_bool
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: TMultiplexedOutputProtocol::write_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_bool
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bool(&mut self, b: bool) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i8
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: TMultiplexedOutputProtocol::write_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_i8
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i8(&mut self, i: i8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i16
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - i16
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: TMultiplexedOutputProtocol::write_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_i16
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i16(&mut self, i: i16) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i32
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: TMultiplexedOutputProtocol::write_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_i32
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i32(&mut self, i: i32) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i64
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: TMultiplexedOutputProtocol::write_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_i64
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i64(&mut self, i: i64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_double
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: TMultiplexedOutputProtocol::write_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_double
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_double(&mut self, d: f64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_string
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: TMultiplexedOutputProtocol::write_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_string
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_string(&mut self, s: &str) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_uuid
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - uuid
    argTypes:
    - '&uuid::Uuid'
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: TMultiplexedOutputProtocol::write_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_uuid
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_uuid(&mut self, uuid: &uuid::Uuid) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_list_begin
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TListIdentifier'
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: TMultiplexedOutputProtocol::write_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_list_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_list_begin(&mut self, identifier: &TListIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_list_end
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: TMultiplexedOutputProtocol::write_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_list_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_set_begin
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TSetIdentifier'
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: TMultiplexedOutputProtocol::write_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_set_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_set_begin(&mut self, identifier: &TSetIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_set_end
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: TMultiplexedOutputProtocol::write_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_set_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_map_begin
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMapIdentifier'
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: TMultiplexedOutputProtocol::write_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_map_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_map_begin(&mut self, identifier: &TMapIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_map_end
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: TMultiplexedOutputProtocol::write_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_map_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: flush
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 2
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: TMultiplexedOutputProtocol::flush
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - flush
    linkageType: ''
    returnType: crate::Result
    signature: fn flush(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_byte
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: TMultiplexedOutputProtocol::write_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_byte(&mut self, b: u8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:207,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:209,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/multiplexed.rs:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 236
      start: 206
    functionDepth: 4
    functionLinenumber: 206
    functionLinenumberEnd: 236
    functionName: tests::must_write_message_begin_with_prefixed_service_name
    functionSourceFile: /src/thrift/lib/rs/src/protocol/multiplexed.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_with_prefixed_service_name()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1079,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1081,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1081,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1083,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - strict
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 1087
      start: 1073
    functionDepth: 3
    functionLinenumber: 1073
    functionLinenumberEnd: 1087
    functionName: tests::test_objects
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::new
    - TBufferChannel::split
    - TBufferChannel::with_capacity
    - TBinaryOutputProtocol::new
    - crate::Result::unwrap
    linkageType: ''
    returnType: "(\n        TBinaryInputProtocol"
    signature: 'fn test_objects(strict: bool,) -> (TBinaryInputProtocol<ReadHalf<TBufferChannel>>,TBinaryOutputProtocol<WriteHalf<TBufferChannel>>,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: assert_eq_written_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 35
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:2,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: copy_write_buffer_to_read_buffer
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 32
    functionsReached:
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:2,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: set_readable_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 37
    functionsReached:
    - set_readable_bytes
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TInputProtocol::skip_till_depth
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 3
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: TInputProtocol::skip
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 20
    functionsReached:
    - TInputProtocol::skip_till_depth
    linkageType: ''
    returnType: crate::Result
    signature: 'fn skip(&mut self, field_type: TType) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:198,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:198,1
    - Dst: TInputProtocol::read_bool
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:205,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:205,1
    - Dst: TInputProtocol::read_i8
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:206,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:206,1
    - Dst: TInputProtocol::read_i16
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:207,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:207,1
    - Dst: TInputProtocol::read_i32
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:208,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:208,1
    - Dst: TInputProtocol::read_i64
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:209,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:209,1
    - Dst: TInputProtocol::read_double
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:210,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:210,1
    - Dst: TInputProtocol::read_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:211,1
    - Dst: Vec::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:211,1
    - Dst: TInputProtocol::read_uuid
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:212,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:212,1
    - Dst: TInputProtocol::read_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:214,1
    - Dst: TInputProtocol::read_field_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:216,1
    - Dst: TInputProtocol::skip_till_depth
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:220,1
    - Dst: TInputProtocol::read_struct_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:222,1
    - Dst: TInputProtocol::read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:225,1
    - Dst: TInputProtocol::skip_till_depth
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:227,1
    - Dst: TInputProtocol::read_list_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:229,1
    - Dst: TInputProtocol::read_set_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:232,1
    - Dst: TInputProtocol::skip_till_depth
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:234,1
    - Dst: TInputProtocol::read_set_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:236,1
    - Dst: TInputProtocol::read_map_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:239,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:241,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:244,1
    - Dst: TInputProtocol::skip_till_depth
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:247,1
    - Dst: TInputProtocol::skip_till_depth
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:248,1
    - Dst: TInputProtocol::read_map_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:250,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:252,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:252,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 139
    argCount: 2
    argNames:
    - field_type
    - depth
    argTypes:
    - TType
    - i8
    constantsTouched: []
    func_position:
      end: 257
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 257
    functionName: TInputProtocol::skip_till_depth
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 2
    functionsReached:
    - TInputProtocol::read_field_begin
    - TInputProtocol::read_i8
    - Vec::map
    - TInputProtocol::read_i32
    - expect
    - crate::Error::Protocol
    - TInputProtocol::read_set_begin
    - TInputProtocol::read_uuid
    - TInputProtocol::read_bytes
    - Err
    - TInputProtocol::read_map_begin
    - TInputProtocol::read_struct_end
    - TInputProtocol::read_i64
    - TInputProtocol::read_bool
    - crate::Result::map
    - TInputProtocol::read_double
    - TInputProtocol::read_i16
    - TInputProtocol::read_struct_begin
    - TInputProtocol::read_list_end
    - TInputProtocol::read_list_begin
    - TInputProtocol::read_set_end
    - TInputProtocol::skip_till_depth
    - TInputProtocol::read_map_end
    linkageType: ''
    returnType: crate::Result
    signature: 'fn skip_till_depth(&mut self, field_type: TType, depth: i8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: self::compact::compact_protocol_min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 274
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionName: TInputProtocol::min_serialized_size
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - self::compact::compact_protocol_min_serialized_size
    linkageType: ''
    returnType: usize
    signature: 'fn min_serialized_size(&self, field_type: TType) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_message_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 372
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 372
    functionName: Box::read_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_message_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_begin(&mut self) -> crate::Result<TMessageIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_message_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 376
      start: 374
    functionDepth: 2
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionName: Box::read_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_message_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: Box::read_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_struct_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_begin(&mut self) -> crate::Result<Option<TStructIdentifier>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_struct_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 384
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionName: Box::read_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_struct_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_field_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 388
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionName: Box::read_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_field_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_begin(&mut self) -> crate::Result<TFieldIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_field_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 392
      start: 390
    functionDepth: 2
    functionLinenumber: 390
    functionLinenumberEnd: 392
    functionName: Box::read_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_field_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_bool
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 396
      start: 394
    functionDepth: 2
    functionLinenumber: 394
    functionLinenumberEnd: 396
    functionName: Box::read_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_bool
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bool(&mut self) -> crate::Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 400
      start: 398
    functionDepth: 1
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionName: Box::read_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_bytes
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bytes(&mut self) -> crate::Result<Vec<u8>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i8
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 404
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 404
    functionName: Box::read_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_i8
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i8(&mut self) -> crate::Result<i8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i16
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 408
      start: 406
    functionDepth: 2
    functionLinenumber: 406
    functionLinenumberEnd: 408
    functionName: Box::read_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_i16
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i16(&mut self) -> crate::Result<i16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i32
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 412
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 412
    functionName: Box::read_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_i32
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i32(&mut self) -> crate::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i64
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 416
      start: 414
    functionDepth: 2
    functionLinenumber: 414
    functionLinenumberEnd: 416
    functionName: Box::read_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_i64
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i64(&mut self) -> crate::Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_double
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 420
      start: 418
    functionDepth: 2
    functionLinenumber: 418
    functionLinenumberEnd: 420
    functionName: Box::read_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_double
    linkageType: ''
    returnType: crate::Result
    signature: fn read_double(&mut self) -> crate::Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_uuid
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 424
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 424
    functionName: Box::read_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_uuid
    linkageType: ''
    returnType: crate::Result
    signature: fn read_uuid(&mut self) -> crate::Result<uuid::Uuid>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 428
      start: 426
    functionDepth: 2
    functionLinenumber: 426
    functionLinenumberEnd: 428
    functionName: Box::read_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_string
    linkageType: ''
    returnType: crate::Result
    signature: fn read_string(&mut self) -> crate::Result<String>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 432
      start: 430
    functionDepth: 2
    functionLinenumber: 430
    functionLinenumberEnd: 432
    functionName: Box::read_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_list_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_begin(&mut self) -> crate::Result<TListIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_list_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 436
      start: 434
    functionDepth: 2
    functionLinenumber: 434
    functionLinenumberEnd: 436
    functionName: Box::read_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_list_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_set_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 440
      start: 438
    functionDepth: 2
    functionLinenumber: 438
    functionLinenumberEnd: 440
    functionName: Box::read_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_set_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_begin(&mut self) -> crate::Result<TSetIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_set_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: Box::read_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_set_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_map_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 2
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: Box::read_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_map_begin
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_begin(&mut self) -> crate::Result<TMapIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_map_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 452
      start: 450
    functionDepth: 2
    functionLinenumber: 450
    functionLinenumberEnd: 452
    functionName: Box::read_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_map_end
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_byte
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 456
      start: 454
    functionDepth: 2
    functionLinenumber: 454
    functionLinenumberEnd: 456
    functionName: Box::read_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_byte(&mut self) -> crate::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 460
      start: 458
    functionDepth: 1
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionName: Box::min_serialized_size
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - min_serialized_size
    linkageType: ''
    returnType: usize
    signature: 'fn min_serialized_size(&self, field_type: TType) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_message_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMessageIdentifier'
    constantsTouched: []
    func_position:
      end: 469
      start: 467
    functionDepth: 2
    functionLinenumber: 467
    functionLinenumberEnd: 469
    functionName: Box::write_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_message_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_message_begin(&mut self, identifier: &TMessageIdentifier)
      -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_message_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 473
      start: 471
    functionDepth: 2
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionName: Box::write_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_message_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TStructIdentifier'
    constantsTouched: []
    func_position:
      end: 477
      start: 475
    functionDepth: 2
    functionLinenumber: 475
    functionLinenumberEnd: 477
    functionName: Box::write_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_struct_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_struct_begin(&mut self, identifier: &TStructIdentifier) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_struct_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 481
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionName: Box::write_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_struct_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_field_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TFieldIdentifier'
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 2
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: Box::write_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_field_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_field_begin(&mut self, identifier: &TFieldIdentifier) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_field_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 489
      start: 487
    functionDepth: 2
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionName: Box::write_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_field_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_field_stop
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 493
      start: 491
    functionDepth: 2
    functionLinenumber: 491
    functionLinenumberEnd: 493
    functionName: Box::write_field_stop
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_field_stop
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_stop(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_bool
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 497
      start: 495
    functionDepth: 2
    functionLinenumber: 495
    functionLinenumberEnd: 497
    functionName: Box::write_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_bool
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bool(&mut self, b: bool) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 501
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 501
    functionName: Box::write_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_bytes
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bytes(&mut self, b: &[u8]) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i8
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 505
      start: 503
    functionDepth: 2
    functionLinenumber: 503
    functionLinenumberEnd: 505
    functionName: Box::write_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_i8
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i8(&mut self, i: i8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i16
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i16
    constantsTouched: []
    func_position:
      end: 509
      start: 507
    functionDepth: 2
    functionLinenumber: 507
    functionLinenumberEnd: 509
    functionName: Box::write_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_i16
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i16(&mut self, i: i16) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i32
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 513
      start: 511
    functionDepth: 2
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionName: Box::write_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_i32
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i32(&mut self, i: i32) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i64
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 517
      start: 515
    functionDepth: 2
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionName: Box::write_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_i64
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i64(&mut self, i: i64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_double
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - d
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 521
      start: 519
    functionDepth: 2
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionName: Box::write_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_double
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_double(&mut self, d: f64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_uuid
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - uuid
    argTypes:
    - '&uuid::Uuid'
    constantsTouched: []
    func_position:
      end: 525
      start: 523
    functionDepth: 2
    functionLinenumber: 523
    functionLinenumberEnd: 525
    functionName: Box::write_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_uuid
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_uuid(&mut self, uuid: &uuid::Uuid) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_string
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 529
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 529
    functionName: Box::write_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_string
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_string(&mut self, s: &str) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_list_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TListIdentifier'
    constantsTouched: []
    func_position:
      end: 533
      start: 531
    functionDepth: 2
    functionLinenumber: 531
    functionLinenumberEnd: 533
    functionName: Box::write_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_list_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_list_begin(&mut self, identifier: &TListIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_list_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 537
      start: 535
    functionDepth: 2
    functionLinenumber: 535
    functionLinenumberEnd: 537
    functionName: Box::write_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_list_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_set_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:540,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TSetIdentifier'
    constantsTouched: []
    func_position:
      end: 541
      start: 539
    functionDepth: 2
    functionLinenumber: 539
    functionLinenumberEnd: 541
    functionName: Box::write_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_set_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_set_begin(&mut self, identifier: &TSetIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_set_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 545
      start: 543
    functionDepth: 2
    functionLinenumber: 543
    functionLinenumberEnd: 545
    functionName: Box::write_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_set_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_map_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMapIdentifier'
    constantsTouched: []
    func_position:
      end: 549
      start: 547
    functionDepth: 2
    functionLinenumber: 547
    functionLinenumberEnd: 549
    functionName: Box::write_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_map_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_map_begin(&mut self, identifier: &TMapIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_map_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:552,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 553
      start: 551
    functionDepth: 2
    functionLinenumber: 551
    functionLinenumberEnd: 553
    functionName: Box::write_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_map_end
    linkageType: ''
    returnType: crate::Result
    signature: fn write_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: flush
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 557
      start: 555
    functionDepth: 2
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionName: Box::flush
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - flush
    linkageType: ''
    returnType: crate::Result
    signature: fn flush(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_byte
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 561
      start: 559
    functionDepth: 2
    functionLinenumber: 559
    functionLinenumberEnd: 561
    functionName: Box::write_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_byte(&mut self, b: u8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - name
    - message_type
    - sequence_number
    argTypes:
    - S
    - TMessageType
    - i32
    constantsTouched: []
    func_position:
      end: 654
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 654
    functionName: TMessageIdentifier::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 33
    functionsReached:
    - into
    linkageType: ''
    returnType: TMessageIdentifier
    signature: 'pub fn new<S: Into<String>>(name: S,message_type: TMessageType,sequence_number:
      i32,) -> TMessageIdentifier'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - S
    constantsTouched: []
    func_position:
      end: 668
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 668
    functionName: TStructIdentifier::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 23
    functionsReached:
    - into
    linkageType: ''
    returnType: TStructIdentifier
    signature: 'pub fn new<S: Into<String>>(name: S) -> TStructIdentifier'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:700,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:700,1
    - Dst: Result::into
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:700,1
    - Dst: thrift::Result::into
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:702,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 3
    argNames:
    - name
    - field_type
    - id
    argTypes:
    - N
    - TType
    - I
    constantsTouched: []
    func_position:
      end: 704
      start: 693
    functionDepth: 1
    functionLinenumber: 693
    functionLinenumberEnd: 704
    functionName: TFieldIdentifier::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 28
    functionsReached:
    - thrift::Result::into
    - into
    - Result::into
    - map
    linkageType: ''
    returnType: TFieldIdentifier
    signature: 'pub fn new<N, S, I>(name: N, field_type: TType, id: I) -> TFieldIdentifierwhereN:
      Into<Option<S>>,S: Into<String>,I: Into<Option<i16>>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - element_type
    - size
    argTypes:
    - TType
    - i32
    constantsTouched: []
    func_position:
      end: 721
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 721
    functionName: TListIdentifier::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: TListIdentifier
    signature: 'pub fn new(element_type: TType, size: i32) -> TListIdentifier'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - element_type
    - size
    argTypes:
    - TType
    - i32
    constantsTouched: []
    func_position:
      end: 738
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 738
    functionName: TSetIdentifier::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: TSetIdentifier
    signature: 'pub fn new(element_type: TType, size: i32) -> TSetIdentifier'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: K::into
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:761,1
    - Dst: V::into
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - key_type
    - value_type
    - size
    argTypes:
    - K
    - V
    - i32
    constantsTouched: []
    func_position:
      end: 765
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 765
    functionName: TMapIdentifier::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 6
    functionsReached:
    - K::into
    - V::into
    linkageType: ''
    returnType: TMapIdentifier
    signature: 'pub fn new<K, V>(key_type: K, value_type: V, size: i32) -> TMapIdentifierwhereK:
      Into<Option<TType>>,V: Into<Option<TType>>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 789
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 789
    functionName: TMessageType::fmt
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message_type
    argTypes:
    - TMessageType
    constantsTouched: []
    func_position:
      end: 800
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 800
    functionName: u8::from
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'fn from(message_type: TMessageType) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:807,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:808,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:809,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:810,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:811,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:811,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 816
      start: 805
    functionDepth: 0
    functionLinenumber: 805
    functionLinenumberEnd: 816
    functionName: TMessageType::try_from
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 1
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn try_from(b: u8) -> Result<Self, Self::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 873
      start: 855
    functionDepth: 0
    functionLinenumber: 855
    functionLinenumberEnd: 873
    functionName: TType::fmt
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:882,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:884,1
    - Dst: crate::Error::Application
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:884,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - expected
    - actual
    argTypes:
    - i32
    - i32
    constantsTouched: []
    func_position:
      end: 889
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 889
    functionName: verify_expected_sequence_number
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 4
    functionsReached:
    - crate::Error::Application
    - Err
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn verify_expected_sequence_number(expected: i32, actual: i32)
      -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:897,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:899,1
    - Dst: crate::Error::Application
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:899,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - expected
    - actual
    argTypes:
    - '&str'
    - '&str'
    constantsTouched: []
    func_position:
      end: 904
      start: 895
    functionDepth: 0
    functionLinenumber: 895
    functionLinenumberEnd: 904
    functionName: verify_expected_service_call
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 4
    functionsReached:
    - crate::Error::Application
    - Err
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn verify_expected_service_call(expected: &str, actual: &str)
      -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:915,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:917,1
    - Dst: crate::Error::Application
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:917,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - expected
    - actual
    argTypes:
    - TMessageType
    - TMessageType
    constantsTouched: []
    func_position:
      end: 922
      start: 910
    functionDepth: 0
    functionLinenumber: 910
    functionLinenumberEnd: 922
    functionName: verify_expected_message_type
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 4
    functionsReached:
    - crate::Error::Application
    - Err
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn verify_expected_message_type(expected: TMessageType,actual:
      TMessageType,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:929,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:930,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:930,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - field_name
    - field
    argTypes:
    - '&str'
    - '&Option<T>'
    constantsTouched: []
    func_position:
      end: 935
      start: 927
    functionDepth: 0
    functionLinenumber: 927
    functionLinenumberEnd: 935
    functionName: verify_required_field_exists
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 5
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn verify_required_field_exists<T>(field_name: &str, field: &Option<T>)
      -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:951,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:951,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:951,1
    - Dst: TCompactInputProtocol::max_container_size
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:960,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:962,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:962,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:962,1
    - Dst: usize::checked_mul
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:973,1
    - Dst: TCompactInputProtocol::max_message_size
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:977,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:979,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:979,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:979,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:988,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:990,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:990,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:990,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 3
    argNames:
    - config
    - container_size
    - element_size
    argTypes:
    - '&TConfiguration'
    - i32
    - usize
    constantsTouched: []
    func_position:
      end: 998
      start: 944
    functionDepth: 1
    functionLinenumber: 944
    functionLinenumberEnd: 998
    functionName: check_container_size
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 5
    functionsReached:
    - crate::Error::Protocol
    - TCompactInputProtocol::max_message_size
    - Err
    - Ok
    - TCompactInputProtocol::max_container_size
    - ProtocolError::new
    - usize::checked_mul
    linkageType: ''
    returnType: crate::Result
    signature: 'pub(crate) fn check_container_size(config: &TConfiguration,container_size:
      i32,element_size: usize,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ok_or_else
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1006,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1007,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - field_ident
    argTypes:
    - '&TFieldIdentifier'
    constantsTouched: []
    func_position:
      end: 1012
      start: 1005
    functionDepth: 0
    functionLinenumber: 1005
    functionLinenumberEnd: 1012
    functionName: field_id
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 16
    functionsReached:
    - crate::Error::Protocol
    - ok_or_else
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn field_id(field_ident: &TFieldIdentifier) -> crate::Result<i16>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1024,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1024,1
    - Dst: TCompactInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1025,1
    - Dst: takes_input_protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1026,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 1023
    functionDepth: 3
    functionLinenumber: 1023
    functionLinenumberEnd: 1027
    functionName: tests::must_create_usable_input_protocol_from_concrete_input_protocol
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - Cursor::new
    - TCompactInputProtocol::new
    - Box::new
    - takes_input_protocol
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_input_protocol_from_concrete_input_protocol()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1031,1
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1031,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1032,1
    - Dst: TCompactInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1032,1
    - Dst: takes_input_protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1033,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1030
    functionDepth: 3
    functionLinenumber: 1030
    functionLinenumberEnd: 1034
    functionName: tests::must_create_usable_input_protocol_from_boxed_input
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - Cursor::new
    - TCompactInputProtocol::new
    - Box::new
    - takes_input_protocol
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_input_protocol_from_boxed_input()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1038,1
    - Dst: TCompactOutputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1039,1
    - Dst: takes_output_protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1040,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1041
      start: 1037
    functionDepth: 2
    functionLinenumber: 1037
    functionLinenumberEnd: 1041
    functionName: tests::must_create_usable_output_protocol_from_concrete_output_protocol
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - takes_output_protocol
    - TCompactOutputProtocol::new
    - Box::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_output_protocol_from_concrete_output_protocol()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1045,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1046,1
    - Dst: TCompactOutputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1046,1
    - Dst: takes_output_protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1047,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 1044
    functionDepth: 2
    functionLinenumber: 1044
    functionLinenumberEnd: 1048
    functionName: tests::must_create_usable_output_protocol_from_boxed_output
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - takes_output_protocol
    - TCompactOutputProtocol::new
    - Box::new
    linkageType: ''
    returnType: void
    signature: fn must_create_usable_output_protocol_from_boxed_output()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: thrift::Result::read_byte
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1054,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1054,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - '&mut R'
    constantsTouched: []
    func_position:
      end: 1055
      start: 1050
    functionDepth: 0
    functionLinenumber: 1050
    functionLinenumberEnd: 1055
    functionName: tests::takes_input_protocol
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - crate::Result::unwrap
    - thrift::Result::read_byte
    linkageType: ''
    returnType: void
    signature: 'fn takes_input_protocol<R>(t: &mut R)whereR: TInputProtocol,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: thrift::Result::flush
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1061,1
    - Dst: io::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1061,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - '&mut W'
    constantsTouched: []
    func_position:
      end: 1062
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1062
    functionName: tests::takes_output_protocol
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::flush
    - io::Result::unwrap
    linkageType: ''
    returnType: void
    signature: 'fn takes_output_protocol<W>(t: &mut W)whereW: TOutputProtocol,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1067,1
    - Dst: SharedStruct::push
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1068,1
    - Dst: SharedStruct::extend_from_slice
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1069,1
    - Dst: to_be_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1069,1
    - Dst: SharedStruct::extend_from_slice
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1070,1
    - Dst: to_be_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1070,1
    - Dst: SharedStruct::push
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1071,1
    - Dst: SharedStruct::extend_from_slice
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1072,1
    - Dst: to_be_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1072,1
    - Dst: SharedStruct::extend_from_slice
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1073,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1073,1
    - Dst: to_be_bytes
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1073,1
    - Dst: SharedStruct::extend_from_slice
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1074,1
    - Dst: SharedStruct::push
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1075,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 41
    argCount: 1
    argNames:
    - payload
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 1077
      start: 1066
    functionDepth: 1
    functionLinenumber: 1066
    functionLinenumberEnd: 1077
    functionName: tests::build_struct_with_unknown_binary_field
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - to_be_bytes
    - Vec::new
    - SharedStruct::extend_from_slice
    - SharedStruct::push
    - '&[u8]::len'
    linkageType: ''
    returnType: Vec
    signature: 'fn build_struct_with_unknown_binary_field(payload: &[u8]) -> Vec<u8>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Cursor::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1080,1
    - Dst: '&[u8]::to_vec'
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1080,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1081,1
    - Dst: Self::read_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1082,1
    - Dst: Self::read_field_begin
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1085,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1091,1
    - Dst: Self::read_i64
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1091,1
    - Dst: Self::skip
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1094,1
    - Dst: Self::read_field_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1097,1
    - Dst: Self::read_struct_end
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1099,1
    - Dst: None::ok_or_else
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1100,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1101,1
    - Dst: '&str::to_string'
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1103,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 50
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 1106
      start: 1079
    functionDepth: 4
    functionLinenumber: 1079
    functionLinenumberEnd: 1106
    functionName: tests::read_struct_skipping_unknown
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - Self::read_field_end
    - TBinaryInputProtocol::new
    - crate::Error::Protocol
    - Self::read_i64
    - Some
    - Self::read_struct_end
    - '&[u8]::to_vec'
    - None::ok_or_else
    - '&str::to_string'
    - Cursor::new
    - Self::read_struct_begin
    - Self::skip
    - Self::read_field_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn read_struct_skipping_unknown(data: &[u8]) -> crate::Result<i64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_struct_with_unknown_binary_field
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1115,1
    - Dst: read_struct_skipping_unknown
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1109
    functionDepth: 5
    functionLinenumber: 1109
    functionLinenumberEnd: 1123
    functionName: tests::must_skip_binary_field_with_non_utf8_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - build_struct_with_unknown_binary_field
    - read_struct_skipping_unknown
    linkageType: ''
    returnType: void
    signature: fn must_skip_binary_field_with_non_utf8_bytes()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_struct_with_unknown_binary_field
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 1126
    functionDepth: 2
    functionLinenumber: 1126
    functionLinenumberEnd: 1129
    functionName: tests::must_skip_valid_utf8_string_field
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - build_struct_with_unknown_binary_field
    linkageType: ''
    returnType: void
    signature: fn must_skip_valid_utf8_string_field()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_struct_with_unknown_binary_field
      Src: /src/thrift/lib/rs/src/protocol/mod.rs:1133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1132
    functionDepth: 2
    functionLinenumber: 1132
    functionLinenumberEnd: 1135
    functionName: tests::must_skip_empty_binary_field
    functionSourceFile: /src/thrift/lib/rs/src/protocol/mod.rs
    functionUses: 0
    functionsReached:
    - build_struct_with_unknown_binary_field
    linkageType: ''
    returnType: void
    signature: fn must_skip_empty_binary_field()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::with_config
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:82,1
    - Dst: TConfiguration::default
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - transport
    argTypes:
    - T
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: TCompactInputProtocol::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 6
    functionsReached:
    - Self::with_config
    - TConfiguration::default
    linkageType: ''
    returnType: TCompactInputProtocol
    signature: 'pub fn new(transport: T) -> TCompactInputProtocol<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - transport
    - config
    argTypes:
    - T
    - TConfiguration
    constantsTouched: []
    func_position:
      end: 95
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 95
    functionName: TCompactInputProtocol::with_config
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 4
    functionsReached:
    - Vec::new
    linkageType: ''
    returnType: TCompactInputProtocol
    signature: 'pub fn with_config(transport: T, config: TConfiguration) -> TCompactInputProtocol<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:98,1
    - Dst: collection_u8_to_type
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:99,1
    - Dst: TCompactInputProtocol::read_varint32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:106,1
    - Dst: TCompactInputProtocol::min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:109,1
    - Dst: super::check_container_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:110,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:112,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 113
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 113
    functionName: TCompactInputProtocol::read_list_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached:
    - super::check_container_size
    - TCompactInputProtocol::min_serialized_size
    - Ok
    - TCompactInputProtocol::read_varint32
    - collection_u8_to_type
    - TCompactInputProtocol::read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_set_begin(&mut self) -> crate::Result<(TType, i32)>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: max_recursion_depth
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:116,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:118,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:118,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:118,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 125
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 125
    functionName: TCompactInputProtocol::check_recursion_depth
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    - ProtocolError::new
    - max_recursion_depth
    linkageType: ''
    returnType: crate::Result
    signature: fn check_recursion_depth(&self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:131,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:134,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:138,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:138,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:138,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 142
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 142
    functionName: TCompactInputProtocol::read_varint32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 6
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    - ProtocolError::new
    - TCompactInputProtocol::read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_varint32(&mut self) -> crate::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:148,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:151,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:155,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:155,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 159
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 159
    functionName: TCompactInputProtocol::read_varint64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    - ProtocolError::new
    - TCompactInputProtocol::read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_varint64(&mut self) -> crate::Result<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:168,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:170,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:170,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:175,1
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:178,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:181,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:181,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:189,1
    - Dst: TMessageType::try_from
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:193,1
    - Dst: TCompactInputProtocol::read_varint32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:195,1
    - Dst: TCompactInputProtocol::read_string
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:196,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:200,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:200,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 205
      start: 166
    functionDepth: 3
    functionLinenumber: 166
    functionLinenumberEnd: 205
    functionName: TCompactInputProtocol::read_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - crate::Error::Protocol
    - TCompactInputProtocol::read_string
    - Err
    - Ok
    - TMessageIdentifier::new
    - TCompactInputProtocol::read_varint32
    - TCompactInputProtocol::read_byte
    - TMessageType::try_from
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_begin(&mut self) -> crate::Result<TMessageIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: TCompactInputProtocol::read_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::check_recursion_depth
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:212,1
    - Dst: push
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:214,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 217
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 217
    functionName: TCompactInputProtocol::read_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    - push
    - TCompactInputProtocol::check_recursion_depth
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_begin(&mut self) -> crate::Result<Option<TStructIdentifier>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pop
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:221,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:221,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 226
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 226
    functionName: TCompactInputProtocol::read_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    - expect
    - pop
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:232,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:236,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:237,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:240,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:241,1
    - Dst: u8_to_type
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:243,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:247,1
    - Dst: TFieldIdentifier::new::<Option<String>, String, Option<i16>>
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:248,1
    - Dst: checked_add
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:256,1
    - Dst: ok_or_else
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:256,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:260,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:260,1
    - Dst: TCompactInputProtocol::read_i16
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:266,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:269,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:272,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 50
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 276
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 276
    functionName: TCompactInputProtocol::read_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - crate::Error::Protocol
    - TFieldIdentifier::new::<Option<String>, String, Option<i16>>
    - Some
    - Ok
    - u8_to_type
    - ok_or_else
    - ProtocolError::new
    - checked_add
    - TCompactInputProtocol::read_i16
    - TCompactInputProtocol::read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_begin(&mut self) -> crate::Result<TFieldIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 280
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionName: TCompactInputProtocol::read_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:283,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:284,1
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:286,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:291,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:292,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:293,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:294,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:294,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 301
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 301
    functionName: TCompactInputProtocol::read_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - take
    - crate::Error::Protocol
    - Err
    - Ok
    - TCompactInputProtocol::read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bool(&mut self) -> crate::Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_varint32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:304,1
    - Dst: max_string_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:306,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:308,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:308,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:308,1
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:319,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:319,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:319,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 323
      start: 303
    functionDepth: 3
    functionLinenumber: 303
    functionLinenumberEnd: 323
    functionName: TCompactInputProtocol::read_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - crate::Error::Protocol
    - Err
    - max_string_size
    - ProtocolError::new
    - map_err
    - read_exact
    - TCompactInputProtocol::read_varint32
    - map
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bytes(&mut self) -> crate::Result<Vec<u8>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:326,1
    - Dst: crate::Result::map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 327
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 327
    functionName: TCompactInputProtocol::read_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - crate::Result::map
    - TCompactInputProtocol::read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i8(&mut self) -> crate::Result<i8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:330,1
    - Dst: zigzag_to_i32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:330,1
    - Dst: TCompactInputProtocol::read_varint32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 331
      start: 329
    functionDepth: 3
    functionLinenumber: 329
    functionLinenumberEnd: 331
    functionName: TCompactInputProtocol::read_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - zigzag_to_i32
    - TCompactInputProtocol::read_varint32
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i16(&mut self) -> crate::Result<i16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:334,1
    - Dst: zigzag_to_i32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:334,1
    - Dst: TCompactInputProtocol::read_varint32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 335
      start: 333
    functionDepth: 3
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionName: TCompactInputProtocol::read_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - zigzag_to_i32
    - TCompactInputProtocol::read_varint32
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i32(&mut self) -> crate::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:338,1
    - Dst: zigzag_to_i64
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:338,1
    - Dst: TCompactInputProtocol::read_varint64
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 339
      start: 337
    functionDepth: 3
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionName: TCompactInputProtocol::read_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - zigzag_to_i64
    - TCompactInputProtocol::read_varint64
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i64(&mut self) -> crate::Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: "transport\n            .read_f64::<LittleEndian>"
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:342,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 345
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 345
    functionName: TCompactInputProtocol::read_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - map_err
    - "transport\n            .read_f64::<LittleEndian>"
    linkageType: ''
    returnType: crate::Result
    signature: fn read_double(&mut self) -> crate::Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:349,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:349,1
    - Dst: uuid::Uuid::from_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:351,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 353
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 353
    functionName: TCompactInputProtocol::read_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - map_err
    - read_exact
    - uuid::Uuid::from_bytes
    - map
    linkageType: ''
    returnType: crate::Result
    signature: fn read_uuid(&mut self) -> crate::Result<uuid::Uuid>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:356,1
    - Dst: String::from_utf8
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:357,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:357,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 358
      start: 355
    functionDepth: 4
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionName: TCompactInputProtocol::read_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - map_err
    - String::from_utf8
    - TCompactInputProtocol::read_bytes
    linkageType: ''
    returnType: crate::Result
    signature: fn read_string(&mut self) -> crate::Result<String>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_list_set_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:361,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:362,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:362,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 363
      start: 360
    functionDepth: 3
    functionLinenumber: 360
    functionLinenumberEnd: 363
    functionName: TCompactInputProtocol::read_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - TCompactInputProtocol::read_list_set_begin
    - TListIdentifier::new
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_begin(&mut self) -> crate::Result<TListIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 367
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 367
    functionName: TCompactInputProtocol::read_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_list_set_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:370,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:371,1
    - Dst: TSetIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 372
      start: 369
    functionDepth: 3
    functionLinenumber: 369
    functionLinenumberEnd: 372
    functionName: TCompactInputProtocol::read_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactInputProtocol::read_list_set_begin
    - TSetIdentifier::new
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_begin(&mut self) -> crate::Result<TSetIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 376
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionName: TCompactInputProtocol::read_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactInputProtocol::read_varint32
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:379,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:381,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:381,1
    - Dst: TCompactInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:383,1
    - Dst: collection_u8_to_type
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:384,1
    - Dst: collection_u8_to_type
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:385,1
    - Dst: TCompactInputProtocol::min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:387,1
    - Dst: TCompactInputProtocol::min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:388,1
    - Dst: super::check_container_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:390,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:392,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:392,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 394
      start: 378
    functionDepth: 3
    functionLinenumber: 378
    functionLinenumberEnd: 394
    functionName: TCompactInputProtocol::read_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - super::check_container_size
    - TCompactInputProtocol::min_serialized_size
    - TMapIdentifier::new
    - Ok
    - TCompactInputProtocol::read_varint32
    - collection_u8_to_type
    - TCompactInputProtocol::read_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_begin(&mut self) -> crate::Result<TMapIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 398
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionName: TCompactInputProtocol::read_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:405,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:405,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:405,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 409
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 409
    functionName: TCompactInputProtocol::read_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 8
    functionsReached:
    - map_err
    - read_exact
    - map
    linkageType: ''
    returnType: crate::Result
    signature: fn read_byte(&mut self) -> crate::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: compact_protocol_min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 413
      start: 411
    functionDepth: 1
    functionLinenumber: 411
    functionLinenumberEnd: 413
    functionName: TCompactInputProtocol::min_serialized_size
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached:
    - compact_protocol_min_serialized_size
    linkageType: ''
    returnType: usize
    signature: 'fn min_serialized_size(&self, field_type: TType) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 434
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 434
    functionName: compact_protocol_min_serialized_size
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub(crate) fn compact_protocol_min_serialized_size(field_type: TType)
      -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_sub
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 439
      start: 437
    functionDepth: 0
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionName: zigzag_to_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached:
    - wrapping_sub
    linkageType: ''
    returnType: i32
    signature: 'fn zigzag_to_i32(n: u32) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_sub
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: zigzag_to_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - wrapping_sub
    linkageType: ''
    returnType: i64
    signature: 'fn zigzag_to_i64(n: u64) -> i64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: seek
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pos
    argTypes:
    - io::SeekFrom
    constantsTouched: []
    func_position:
      end: 452
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 452
    functionName: TCompactInputProtocol::seek
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - seek
    linkageType: ''
    returnType: io::Result
    signature: 'fn seek(&mut self, pos: io::SeekFrom) -> io::Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 463
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 463
    functionName: TCompactInputProtocolFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TCompactInputProtocolFactory
    signature: pub fn new() -> TCompactInputProtocolFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:468,1
    - Dst: TCompactInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - transport
    argTypes:
    - Box<dyn TReadTransport + Send>
    constantsTouched: []
    func_position:
      end: 469
      start: 467
    functionDepth: 3
    functionLinenumber: 467
    functionLinenumberEnd: 469
    functionName: TCompactInputProtocolFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactInputProtocol::new
    - Box::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self, transport: Box<dyn TReadTransport + Send>) -> Box<dyn
      TInputProtocol + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - transport
    argTypes:
    - T
    constantsTouched: []
    func_position:
      end: 518
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 518
    functionName: TCompactOutputProtocol::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 7
    functionsReached:
    - Vec::new
    linkageType: ''
    returnType: TCompactOutputProtocol
    signature: 'pub fn new(transport: T) -> TCompactOutputProtocol<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:524,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:526,1
    - Dst: TCompactOutputProtocol::write_i16
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:527,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:530,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - field_type
    - field_id
    argTypes:
    - u8
    - i16
    constantsTouched: []
    func_position:
      end: 531
      start: 521
    functionDepth: 5
    functionLinenumber: 521
    functionLinenumberEnd: 531
    functionName: TCompactOutputProtocol::write_field_header
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached:
    - Ok
    - TCompactOutputProtocol::write_i16
    - TCompactOutputProtocol::write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_field_header(&mut self, field_type: u8, field_id: i16) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: collection_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:538,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:541,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:544,1
    - Dst: write_varint
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:547,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:547,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:547,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 2
    argNames:
    - element_type
    - element_count
    argTypes:
    - TType
    - i32
    constantsTouched: []
    func_position:
      end: 552
      start: 533
    functionDepth: 5
    functionLinenumber: 533
    functionLinenumberEnd: 552
    functionName: TCompactOutputProtocol::write_list_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached:
    - collection_type_to_u8
    - TCompactOutputProtocol::write_byte
    - write_varint
    - map_err
    - map
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_list_set_begin(&mut self,element_type: TType,element_count:
      i32,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 558
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 558
    functionName: TCompactOutputProtocol::assert_no_pending_bool_write
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn assert_no_pending_bool_write(&self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:566,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:567,1
    - Dst: u8::from
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:567,1
    - Dst: write_varint
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:569,1
    - Dst: TCompactOutputProtocol::write_string
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:571,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:572,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMessageIdentifier'
    constantsTouched: []
    func_position:
      end: 573
      start: 565
    functionDepth: 5
    functionLinenumber: 565
    functionLinenumberEnd: 573
    functionName: TCompactOutputProtocol::write_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactOutputProtocol::write_byte
    - write_varint
    - Ok
    - TCompactOutputProtocol::write_string
    - u8::from
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_message_begin(&mut self, identifier: &TMessageIdentifier)
      -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::assert_no_pending_bool_write
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:576,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:577,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 578
      start: 575
    functionDepth: 1
    functionLinenumber: 575
    functionLinenumberEnd: 578
    functionName: TCompactOutputProtocol::write_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    - TCompactOutputProtocol::assert_no_pending_bool_write
    linkageType: ''
    returnType: crate::Result
    signature: fn write_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:581,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames: []
    argTypes:
    - '&TStructIdentifier'
    constantsTouched: []
    func_position:
      end: 584
      start: 580
    functionDepth: 0
    functionLinenumber: 580
    functionLinenumberEnd: 584
    functionName: TCompactOutputProtocol::write_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    - push
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_struct_begin(&mut self, _: &TStructIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::assert_no_pending_bool_write
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:587,1
    - Dst: pop
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:588,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:588,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 593
      start: 586
    functionDepth: 1
    functionLinenumber: 586
    functionLinenumberEnd: 593
    functionName: TCompactOutputProtocol::write_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    - expect
    - pop
    - TCompactOutputProtocol::assert_no_pending_bool_write
    linkageType: ''
    returnType: crate::Result
    signature: fn write_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:598,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:605,1
    - Dst: '&TFieldIdentifier::clone'
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:605,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:606,1
    - Dst: type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:609,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:610,1
    - Dst: TCompactOutputProtocol::write_field_header
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TFieldIdentifier'
    constantsTouched: []
    func_position:
      end: 614
      start: 595
    functionDepth: 6
    functionLinenumber: 595
    functionLinenumberEnd: 614
    functionName: TCompactOutputProtocol::write_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - type_to_u8
    - is_some
    - Some
    - TCompactOutputProtocol::write_field_header
    - Ok
    - '&TFieldIdentifier::clone'
    - expect
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_field_begin(&mut self, identifier: &TFieldIdentifier) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::assert_no_pending_bool_write
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:617,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:618,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 619
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 619
    functionName: TCompactOutputProtocol::write_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    - TCompactOutputProtocol::assert_no_pending_bool_write
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::assert_no_pending_bool_write
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:622,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:623,1
    - Dst: type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 624
      start: 621
    functionDepth: 5
    functionLinenumber: 621
    functionLinenumberEnd: 624
    functionName: TCompactOutputProtocol::write_field_stop
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - type_to_u8
    - TCompactOutputProtocol::write_byte
    - TCompactOutputProtocol::assert_no_pending_bool_write
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_stop(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:627,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:629,1
    - Dst: TCompactOutputProtocol::write_field_header
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:631,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:635,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:637,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 641
      start: 626
    functionDepth: 6
    functionLinenumber: 626
    functionLinenumberEnd: 641
    functionName: TCompactOutputProtocol::write_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - take
    - expect
    - TCompactOutputProtocol::write_byte
    - TCompactOutputProtocol::write_field_header
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bool(&mut self, b: bool) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_varint
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:646,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:646,1
    - Dst: write_all
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:647,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:647,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 648
      start: 643
    functionDepth: 0
    functionLinenumber: 643
    functionLinenumberEnd: 648
    functionName: TCompactOutputProtocol::write_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - write_varint
    - map_err
    - '&[u8]::len'
    - write_all
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bytes(&mut self, b: &[u8]) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 652
      start: 650
    functionDepth: 5
    functionLinenumber: 650
    functionLinenumberEnd: 652
    functionName: TCompactOutputProtocol::write_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactOutputProtocol::write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i8(&mut self, i: i8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_varint
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:655,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:655,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - i16
    constantsTouched: []
    func_position:
      end: 659
      start: 654
    functionDepth: 1
    functionLinenumber: 654
    functionLinenumberEnd: 659
    functionName: TCompactOutputProtocol::write_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - write_varint
    - map_err
    - map
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i16(&mut self, i: i16) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_varint
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:662,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:662,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:662,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 666
      start: 661
    functionDepth: 1
    functionLinenumber: 661
    functionLinenumberEnd: 666
    functionName: TCompactOutputProtocol::write_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - write_varint
    - map_err
    - map
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i32(&mut self, i: i32) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_varint
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:669,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:669,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 673
      start: 668
    functionDepth: 1
    functionLinenumber: 668
    functionLinenumberEnd: 673
    functionName: TCompactOutputProtocol::write_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - write_varint
    - map_err
    - map
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i64(&mut self, i: i64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: "transport\n            .write_f64::<LittleEndian>"
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:676,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - d
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 679
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 679
    functionName: TCompactOutputProtocol::write_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - "transport\n            .write_f64::<LittleEndian>"
    - map_err
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_double(&mut self, d: f64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_all
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:682,1
    - Dst: thrift::Result::as_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:683,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - uuid
    argTypes:
    - '&uuid::Uuid'
    constantsTouched: []
    func_position:
      end: 685
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 685
    functionName: TCompactOutputProtocol::write_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::as_bytes
    - map_err
    - write_all
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_uuid(&mut self, uuid: &uuid::Uuid) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::write_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:688,1
    - Dst: Result::as_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 689
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 689
    functionName: TCompactOutputProtocol::write_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 1
    functionsReached:
    - Result::as_bytes
    - TCompactOutputProtocol::write_bytes
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_string(&mut self, s: &str) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::write_list_set_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TListIdentifier'
    constantsTouched: []
    func_position:
      end: 693
      start: 691
    functionDepth: 6
    functionLinenumber: 691
    functionLinenumberEnd: 693
    functionName: TCompactOutputProtocol::write_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactOutputProtocol::write_list_set_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_list_begin(&mut self, identifier: &TListIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 697
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 697
    functionName: TCompactOutputProtocol::write_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::write_list_set_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TSetIdentifier'
    constantsTouched: []
    func_position:
      end: 701
      start: 699
    functionDepth: 6
    functionLinenumber: 699
    functionLinenumberEnd: 701
    functionName: TCompactOutputProtocol::write_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactOutputProtocol::write_list_set_begin
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_set_begin(&mut self, identifier: &TSetIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 705
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 705
    functionName: TCompactOutputProtocol::write_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:709,1
    - Dst: write_varint
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:713,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:715,1
    - Dst: collection_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:718,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:720,1
    - Dst: collection_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:723,1
    - Dst: TCompactOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:726,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMapIdentifier'
    constantsTouched: []
    func_position:
      end: 728
      start: 707
    functionDepth: 5
    functionLinenumber: 707
    functionLinenumberEnd: 728
    functionName: TCompactOutputProtocol::write_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - write_varint
    - collection_type_to_u8
    - expect
    - TCompactOutputProtocol::write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_map_begin(&mut self, identifier: &TMapIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:731,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 732
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 732
    functionName: TCompactOutputProtocol::write_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: flush
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:735,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 736
      start: 734
    functionDepth: 2
    functionLinenumber: 734
    functionLinenumberEnd: 736
    functionName: TCompactOutputProtocol::flush
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - flush
    - map_err
    linkageType: ''
    returnType: crate::Result
    signature: fn flush(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:742,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:742,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:742,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 743
      start: 741
    functionDepth: 4
    functionLinenumber: 741
    functionLinenumberEnd: 743
    functionName: TCompactOutputProtocol::write_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 7
    functionsReached:
    - write
    - map
    - map_err
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_byte(&mut self, b: u8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 754
      start: 752
    functionDepth: 0
    functionLinenumber: 752
    functionLinenumberEnd: 754
    functionName: TCompactOutputProtocolFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TCompactOutputProtocolFactory
    signature: pub fn new() -> TCompactOutputProtocolFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:762,1
    - Dst: TCompactOutputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - transport
    argTypes:
    - Box<dyn TWriteTransport + Send>
    constantsTouched: []
    func_position:
      end: 763
      start: 758
    functionDepth: 2
    functionLinenumber: 758
    functionLinenumberEnd: 763
    functionName: TCompactOutputProtocolFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactOutputProtocol::new
    - Box::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self,transport: Box<dyn TWriteTransport + Send>,) -> Box<dyn
      TOutputProtocol + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:769,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 771
      start: 766
    functionDepth: 1
    functionLinenumber: 766
    functionLinenumberEnd: 771
    functionName: collection_type_to_u8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached:
    - type_to_u8
    linkageType: ''
    returnType: u8
    signature: 'fn collection_type_to_u8(field_type: TType) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 789
      start: 773
    functionDepth: 0
    functionLinenumber: 773
    functionLinenumberEnd: 789
    functionName: type_to_u8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'fn type_to_u8(field_type: TType) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:797,1
    - Dst: u8_to_type
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:798,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 800
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 800
    functionName: collection_u8_to_type
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 2
    functionsReached:
    - u8_to_type
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'fn collection_u8_to_type(b: u8) -> crate::Result<TType>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:804,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:805,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:806,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:807,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:808,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:809,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:810,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:811,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:812,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:813,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:814,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:815,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:816,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:816,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 821
      start: 802
    functionDepth: 0
    functionLinenumber: 802
    functionLinenumberEnd: 821
    functionName: u8_to_type
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 4
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'fn u8_to_type(b: u8) -> crate::Result<TType>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:836,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:838,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 860
      start: 835
    functionDepth: 4
    functionLinenumber: 835
    functionLinenumberEnd: 860
    functionName: tests::must_write_message_begin_largest_maximum_positive_sequence_number
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_largest_maximum_positive_sequence_number()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:864,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:881,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:883,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 887
      start: 863
    functionDepth: 4
    functionLinenumber: 863
    functionLinenumberEnd: 887
    functionName: tests::must_read_message_begin_largest_maximum_positive_sequence_number
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_largest_maximum_positive_sequence_number()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:891,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:893,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 912
      start: 890
    functionDepth: 4
    functionLinenumber: 890
    functionLinenumberEnd: 912
    functionName: tests::must_write_message_begin_positive_sequence_number_0
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_positive_sequence_number_0()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:916,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:930,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:932,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 936
      start: 915
    functionDepth: 4
    functionLinenumber: 915
    functionLinenumberEnd: 936
    functionName: tests::must_read_message_begin_positive_sequence_number_0
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_positive_sequence_number_0()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:940,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:942,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:961,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 962
      start: 939
    functionDepth: 4
    functionLinenumber: 939
    functionLinenumberEnd: 962
    functionName: tests::must_write_message_begin_positive_sequence_number_1
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_positive_sequence_number_1()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:966,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:981,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:983,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 987
      start: 965
    functionDepth: 4
    functionLinenumber: 965
    functionLinenumberEnd: 987
    functionName: tests::must_read_message_begin_positive_sequence_number_1
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_positive_sequence_number_1()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:991,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:993,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1010,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 990
    functionDepth: 4
    functionLinenumber: 990
    functionLinenumberEnd: 1011
    functionName: tests::must_write_message_begin_zero_sequence_number
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_zero_sequence_number()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1015,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1028,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1030,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1031,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1014
    functionDepth: 4
    functionLinenumber: 1014
    functionLinenumberEnd: 1034
    functionName: tests::must_read_message_begin_zero_sequence_number
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_zero_sequence_number()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1038,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1040,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1062,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1037
    functionDepth: 4
    functionLinenumber: 1037
    functionLinenumberEnd: 1063
    functionName: tests::must_write_message_begin_largest_minimum_negative_sequence_number
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_largest_minimum_negative_sequence_number()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1067,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1085,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1087,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1088,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 1066
    functionDepth: 4
    functionLinenumber: 1066
    functionLinenumberEnd: 1091
    functionName: tests::must_read_message_begin_largest_minimum_negative_sequence_number
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_largest_minimum_negative_sequence_number()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1095,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1097,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1094
    functionDepth: 4
    functionLinenumber: 1094
    functionLinenumberEnd: 1120
    functionName: tests::must_write_message_begin_negative_sequence_number_0
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_negative_sequence_number_0()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1124,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1142,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1144,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1123
    functionDepth: 4
    functionLinenumber: 1123
    functionLinenumberEnd: 1148
    functionName: tests::must_read_message_begin_negative_sequence_number_0
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_negative_sequence_number_0()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1152,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1154,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1177
      start: 1151
    functionDepth: 4
    functionLinenumber: 1151
    functionLinenumberEnd: 1177
    functionName: tests::must_write_message_begin_negative_sequence_number_1
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_negative_sequence_number_1()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1181,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1199,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1201,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1205
      start: 1180
    functionDepth: 4
    functionLinenumber: 1180
    functionLinenumberEnd: 1205
    functionName: tests::must_read_message_begin_negative_sequence_number_1
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_negative_sequence_number_1()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1209,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1211,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1208
    functionDepth: 4
    functionLinenumber: 1208
    functionLinenumberEnd: 1234
    functionName: tests::must_write_message_begin_negative_sequence_number_2
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_message_begin_negative_sequence_number_2()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1238,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1256,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1258,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1262
      start: 1237
    functionDepth: 4
    functionLinenumber: 1237
    functionLinenumberEnd: 1262
    functionName: tests::must_read_message_begin_negative_sequence_number_2
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_message_begin_negative_sequence_number_2()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1268,1
    - Dst: write_field_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1271,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1272,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1271,1
    - Dst: write_i64
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1274,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1274,1
    - Dst: write_field_end
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1275,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1275,1
    - Dst: flush
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1276,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1276,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1278,1
    - Dst: read_field_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1280,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1265
    functionDepth: 4
    functionLinenumber: 1265
    functionLinenumberEnd: 1283
    functionName: tests::must_round_trip_upto_i64_maxvalue
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - write_field_end
    - test_objects
    - flush
    - write_field_begin
    - read_field_begin
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    - unwrap
    - write_i64
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_upto_i64_maxvalue()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1287,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1289,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1291,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1293,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1297
      start: 1286
    functionDepth: 4
    functionLinenumber: 1286
    functionLinenumberEnd: 1297
    functionName: tests::must_round_trip_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_message_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: assert_no_write
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:743,1
    - Dst: write_message_end
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 744
      start: 742
    functionDepth: 5
    functionLinenumber: 742
    functionLinenumberEnd: 744
    functionName: tests::must_write_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - assert_no_write
    - write_message_end
    linkageType: ''
    returnType: void
    signature: fn must_write_message_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1309,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1312,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1318,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1319,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1322,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1323,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1326,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1327,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1330,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1331,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1308
    functionDepth: 4
    functionLinenumber: 1308
    functionLinenumberEnd: 1343
    functionName: tests::must_write_struct_with_delta_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_struct_with_delta_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1347,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1350,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1356,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1357,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1358,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1361,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1362,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1363,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1366,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1367,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1368,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1371,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1372,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1374,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1377,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1379,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1387,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1389,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1397,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1399,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1407,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1409,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1420
      start: 1346
    functionDepth: 4
    functionLinenumber: 1346
    functionLinenumberEnd: 1420
    functionName: tests::must_round_trip_struct_with_delta_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_struct_with_delta_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1424,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1427,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1433,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1434,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1437,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1438,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1441,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1442,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1445,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1446,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1457
      start: 1423
    functionDepth: 4
    functionLinenumber: 1423
    functionLinenumberEnd: 1457
    functionName: tests::must_write_struct_with_non_zero_initial_field_and_delta_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_struct_with_non_zero_initial_field_and_delta_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1461,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1464,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1470,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1471,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1472,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1475,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1476,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1477,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1480,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1481,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1482,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1485,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1486,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1488,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1491,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1493,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1501,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1503,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1511,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1513,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1521,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1523,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1534
      start: 1460
    functionDepth: 4
    functionLinenumber: 1460
    functionLinenumberEnd: 1534
    functionName: tests::must_round_trip_struct_with_non_zero_initial_field_and_delta_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_struct_with_non_zero_initial_field_and_delta_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1538,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1541,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1546,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1547,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1550,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1551,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1554,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1555,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1558,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1559,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1537
    functionDepth: 4
    functionLinenumber: 1537
    functionLinenumberEnd: 1574
    functionName: tests::must_write_struct_with_long_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_struct_with_long_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1578,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1581,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1586,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1587,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1588,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1591,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1592,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1593,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1596,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1597,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1598,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1601,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1602,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1604,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1607,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1609,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1617,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1619,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1627,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1629,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1637,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1639,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1650
      start: 1577
    functionDepth: 4
    functionLinenumber: 1577
    functionLinenumberEnd: 1650
    functionName: tests::must_round_trip_struct_with_long_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_struct_with_long_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1654,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1657,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1662,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1663,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1666,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1667,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1670,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1671,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1674,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1675,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1678,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1679,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1682,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1683,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1699,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1700
      start: 1653
    functionDepth: 4
    functionLinenumber: 1653
    functionLinenumberEnd: 1700
    functionName: tests::must_write_struct_with_mix_of_long_and_delta_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_struct_with_mix_of_long_and_delta_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1705,1
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1708,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1709,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1714,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1715,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1716,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1719,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1720,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1721,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1724,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1725,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1726,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1729,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1730,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1731,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1734,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1735,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1736,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1739,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1740,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1742,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1745,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1747,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1755,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1757,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1765,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1767,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1775,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1777,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1785,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1787,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1795,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1797,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1704
    functionDepth: 4
    functionLinenumber: 1704
    functionLinenumberEnd: 1808
    functionName: tests::must_round_trip_struct_with_mix_of_long_and_delta_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TStructIdentifier::new
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_struct_with_mix_of_long_and_delta_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1815,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1818,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1822,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1823,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1827,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1828,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1831,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1835,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1836,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1840,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1841,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1844,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1845,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1848,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1849,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1862,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1863
      start: 1811
    functionDepth: 4
    functionLinenumber: 1811
    functionLinenumberEnd: 1863
    functionName: tests::must_write_nested_structs_0
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_nested_structs_0()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1871,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1874,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1878,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1879,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1880,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1884,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1885,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1886,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1889,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1893,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1894,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1895,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1899,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1900,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1901,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1904,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1905,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1908,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1909,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1911,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1914,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1916,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1924,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1926,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1934,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1937,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1939,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1947,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1949,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1957,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1960,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1969,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1972,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1982
      start: 1867
    functionDepth: 4
    functionLinenumber: 1867
    functionLinenumberEnd: 1982
    functionName: tests::must_round_trip_nested_structs_0
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_nested_structs_0()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1989,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1992,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1996,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:1997,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2001,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2002,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2005,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2009,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2010,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2014,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2015,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2018,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2019,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2022,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2023,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2036,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2037
      start: 1985
    functionDepth: 4
    functionLinenumber: 1985
    functionLinenumberEnd: 2037
    functionName: tests::must_write_nested_structs_1
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_nested_structs_1()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2045,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2048,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2052,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2053,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2054,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2058,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2059,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2060,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2063,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2067,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2068,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2069,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2073,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2074,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2075,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2078,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2079,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2082,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2083,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2085,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2088,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2090,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2098,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2100,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2108,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2111,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2113,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2121,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2123,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2131,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2134,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2143,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2146,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2156
      start: 2041
    functionDepth: 4
    functionLinenumber: 2041
    functionLinenumberEnd: 2156
    functionName: tests::must_round_trip_nested_structs_1
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_nested_structs_1()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2163,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2166,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2170,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2171,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2175,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2176,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2179,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2183,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2184,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2188,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2189,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2192,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2193,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2196,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2197,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2211
      start: 2159
    functionDepth: 4
    functionLinenumber: 2159
    functionLinenumberEnd: 2211
    functionName: tests::must_write_nested_structs_2
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_nested_structs_2()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2216,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2219,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2223,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2224,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2225,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2229,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2230,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2231,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2234,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2238,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2239,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2240,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2244,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2245,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2246,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2249,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2250,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2253,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2254,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2256,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2259,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2261,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2269,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2271,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2279,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2282,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2284,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2292,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2294,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2302,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2305,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2314,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2317,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2215
    functionDepth: 4
    functionLinenumber: 2215
    functionLinenumberEnd: 2327
    functionName: tests::must_round_trip_nested_structs_2
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_nested_structs_2()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2334,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2337,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2341,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2342,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2346,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2347,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2350,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2354,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2355,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2359,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2360,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2363,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2364,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2367,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2368,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2383
      start: 2330
    functionDepth: 4
    functionLinenumber: 2330
    functionLinenumberEnd: 2383
    functionName: tests::must_write_nested_structs_3
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_nested_structs_3()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2391,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2394,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2398,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2399,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2400,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2404,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2405,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2406,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2409,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2413,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2414,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2415,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2419,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2420,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2421,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2424,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2425,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2428,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2429,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2431,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2434,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2436,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2444,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2446,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2454,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2457,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2459,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2467,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2469,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2477,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2480,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2489,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2492,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2502
      start: 2387
    functionDepth: 4
    functionLinenumber: 2387
    functionLinenumberEnd: 2502
    functionName: tests::must_round_trip_nested_structs_3
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_nested_structs_3()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2506,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2509,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2514,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2515,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2516,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2519,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2520,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2521,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2524,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2525,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2526,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2529,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2530,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2531,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2534,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2535,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2549
      start: 2505
    functionDepth: 4
    functionLinenumber: 2505
    functionLinenumberEnd: 2549
    functionName: tests::must_write_bool_field
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_bool_field()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2554,1
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2557,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2558,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2563,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2564,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2565,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2566,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2569,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2570,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2571,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2572,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2575,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2576,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2577,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2578,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2581,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2582,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2583,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2584,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2587,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2588,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2590,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2593,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2595,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2603,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2605,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2607,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2615,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2617,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2619,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2627,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2629,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2631,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2639,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2641,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2643,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2654
      start: 2553
    functionDepth: 4
    functionLinenumber: 2553
    functionLinenumberEnd: 2654
    functionName: tests::must_round_trip_bool_field
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TStructIdentifier::new
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_bool_field()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2659,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2660,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2661,1
    - Dst: write_field_end
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2662,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2662,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2663
      start: 2658
    functionDepth: 4
    functionLinenumber: 2658
    functionLinenumberEnd: 2663
    functionName: tests::must_fail_if_write_field_end_without_writing_bool_value
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - write_field_end
    - assert_success
    - unwrap
    linkageType: ''
    returnType: void
    signature: fn must_fail_if_write_field_end_without_writing_bool_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2668,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2669,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2670,1
    - Dst: write_field_stop
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2671,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2667
    functionDepth: 4
    functionLinenumber: 2667
    functionLinenumberEnd: 2672
    functionName: tests::must_fail_if_write_stop_field_without_writing_bool_value
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - unwrap
    - assert_success
    - write_field_stop
    linkageType: ''
    returnType: void
    signature: fn must_fail_if_write_stop_field_without_writing_bool_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2677,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2678,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2679,1
    - Dst: write_struct_end
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2680,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2681
      start: 2676
    functionDepth: 4
    functionLinenumber: 2676
    functionLinenumberEnd: 2681
    functionName: tests::must_fail_if_write_struct_end_without_writing_bool_value
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - unwrap
    - write_struct_end
    linkageType: ''
    returnType: void
    signature: fn must_fail_if_write_struct_end_without_writing_bool_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2686,1
    - Dst: write_struct_end
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2687,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2688
      start: 2685
    functionDepth: 4
    functionLinenumber: 2685
    functionLinenumberEnd: 2688
    functionName: tests::must_fail_if_write_struct_end_without_any_fields
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - unwrap
    - write_struct_end
    linkageType: ''
    returnType: void
    signature: fn must_fail_if_write_struct_end_without_any_fields()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: assert_no_write
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:819,1
    - Dst: write_field_end
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 820
      start: 818
    functionDepth: 5
    functionLinenumber: 818
    functionLinenumberEnd: 820
    functionName: tests::must_write_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - write_field_end
    - assert_no_write
    linkageType: ''
    returnType: void
    signature: fn must_write_field_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2697,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2699,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2704
      start: 2696
    functionDepth: 4
    functionLinenumber: 2696
    functionLinenumberEnd: 2704
    functionName: tests::must_write_small_sized_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_small_sized_list_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2708,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2710,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2711,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2713,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2714,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2715,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2717,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2719,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2721,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2729
      start: 2707
    functionDepth: 4
    functionLinenumber: 2707
    functionLinenumberEnd: 2729
    functionName: tests::must_round_trip_small_sized_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TListIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_small_sized_list_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2733,1
    - Dst: write_list_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2735,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2735,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2744
      start: 2732
    functionDepth: 4
    functionLinenumber: 2732
    functionLinenumberEnd: 2744
    functionName: tests::must_write_large_sized_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - TListIdentifier::new
    - write_list_begin
    linkageType: ''
    returnType: void
    signature: fn must_write_large_sized_list_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects_no_limits
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2748,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2750,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2751,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2753,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2747
    functionDepth: 3
    functionLinenumber: 2747
    functionLinenumberEnd: 2757
    functionName: tests::must_round_trip_large_sized_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - copy_write_buffer_to_read_buffer
    - assert_success
    - test_objects_no_limits
    - TListIdentifier::new
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_large_sized_list_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: assert_no_write
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:862,1
    - Dst: write_list_end
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:862,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 863
      start: 861
    functionDepth: 5
    functionLinenumber: 861
    functionLinenumberEnd: 863
    functionName: tests::must_write_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - write_list_end
    - assert_no_write
    linkageType: ''
    returnType: void
    signature: fn must_write_list_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2766,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2768,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2773
      start: 2765
    functionDepth: 4
    functionLinenumber: 2765
    functionLinenumberEnd: 2773
    functionName: tests::must_write_small_sized_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_small_sized_set_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2777,1
    - Dst: TSetIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2779,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2780,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2782,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2783,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2784,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2786,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2788,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2790,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2797,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2798
      start: 2776
    functionDepth: 4
    functionLinenumber: 2776
    functionLinenumberEnd: 2798
    functionName: tests::must_round_trip_small_sized_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TSetIdentifier::new
    - assert_success
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_small_sized_set_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2802,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2804,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2811,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2812
      start: 2801
    functionDepth: 4
    functionLinenumber: 2801
    functionLinenumberEnd: 2812
    functionName: tests::must_write_large_sized_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_large_sized_set_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects_no_limits
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2816,1
    - Dst: TSetIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2818,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2819,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2821,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2825
      start: 2815
    functionDepth: 3
    functionLinenumber: 2815
    functionLinenumberEnd: 2825
    functionName: tests::must_round_trip_large_sized_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - copy_write_buffer_to_read_buffer
    - TSetIdentifier::new
    - assert_success
    - test_objects_no_limits
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_large_sized_set_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: assert_no_write
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:904,1
    - Dst: write_set_end
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 905
      start: 903
    functionDepth: 5
    functionLinenumber: 903
    functionLinenumberEnd: 905
    functionName: tests::must_write_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - write_set_end
    - assert_no_write
    linkageType: ''
    returnType: void
    signature: fn must_write_set_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2834,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2836,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2841
      start: 2833
    functionDepth: 4
    functionLinenumber: 2833
    functionLinenumberEnd: 2841
    functionName: tests::must_write_zero_sized_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_zero_sized_map_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2845,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2847,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2849,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2860
      start: 2844
    functionDepth: 4
    functionLinenumber: 2844
    functionLinenumberEnd: 2860
    functionName: tests::must_read_zero_sized_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_read_zero_sized_map_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:909,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 917
      start: 908
    functionDepth: 4
    functionLinenumber: 908
    functionLinenumberEnd: 917
    functionName: tests::must_write_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_map_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:921,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:923,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:932,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:934,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 943
      start: 920
    functionDepth: 4
    functionLinenumber: 920
    functionLinenumberEnd: 943
    functionName: tests::must_round_trip_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - copy_write_buffer_to_read_buffer
    - TMapIdentifier::new
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_map_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: assert_no_write
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:947,1
    - Dst: write_map_end
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:947,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 5
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: tests::must_write_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - write_map_end
    - assert_no_write
    linkageType: ''
    returnType: void
    signature: fn must_write_map_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2900,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2902,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2903,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2904,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2905,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2914,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2915
      start: 2899
    functionDepth: 4
    functionLinenumber: 2899
    functionLinenumberEnd: 2915
    functionName: tests::must_write_map_with_bool_key_and_value
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - assert_success
    linkageType: ''
    returnType: void
    signature: fn must_write_map_with_bool_key_and_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2919,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2921,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2922,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2923,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2924,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2925,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2926,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2927,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2929,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2932,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2935,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2938,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2941,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2944,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2947,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2948
      start: 2918
    functionDepth: 4
    functionLinenumber: 2918
    functionLinenumberEnd: 2948
    functionName: tests::must_round_trip_map_with_bool_value
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - TMapIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_map_with_bool_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2954
      start: 2951
    functionDepth: 4
    functionLinenumber: 2951
    functionLinenumberEnd: 2954
    functionName: tests::must_read_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    linkageType: ''
    returnType: void
    signature: fn must_read_map_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2958,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2959,1
    - Dst: read_i64
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2960,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2968
      start: 2957
    functionDepth: 4
    functionLinenumber: 2957
    functionLinenumberEnd: 2968
    functionName: tests::must_reject_overlong_varint_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - read_i64
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_reject_overlong_varint_i64()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2972,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2977
      start: 2971
    functionDepth: 4
    functionLinenumber: 2971
    functionLinenumberEnd: 2977
    functionName: tests::must_accept_valid_10_byte_varint_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_accept_valid_10_byte_varint_i64()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2997,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2999,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:2999,1
    - Dst: TCompactInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3001,1
    - Dst: TConfiguration::no_limits
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3001,1
    - Dst: TCompactOutputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3005
      start: 2993
    functionDepth: 2
    functionLinenumber: 2993
    functionLinenumberEnd: 3005
    functionName: tests::test_objects_no_limits
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TCompactOutputProtocol::new
    - TConfiguration::no_limits
    - TBufferChannel::split
    - TCompactInputProtocol::with_config
    - TBufferChannel::with_capacity
    - crate::Result::unwrap
    linkageType: ''
    returnType: "(\n        TCompactInputProtocol"
    signature: fn test_objects_no_limits() -> (TCompactInputProtocol<ReadHalf<TBufferChannel>>,TCompactOutputProtocol<WriteHalf<TBufferChannel>>,)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3009,1
    - Dst: write_double
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3013,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3013,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3014,1
    - Dst: read_double
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3016,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3018
      start: 3008
    functionDepth: 4
    functionLinenumber: 3008
    functionLinenumberEnd: 3018
    functionName: tests::must_read_write_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - copy_write_buffer_to_read_buffer
    - write_double
    - unwrap
    - read_double
    linkageType: ''
    returnType: void
    signature: fn must_read_write_double()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3022,1
    - Dst: write_double
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3027,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3027,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3029,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3030
      start: 3021
    functionDepth: 4
    functionLinenumber: 3021
    functionLinenumberEnd: 3030
    functionName: tests::must_encode_double_as_other_langs
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    - unwrap
    - write_double
    linkageType: ''
    returnType: void
    signature: fn must_encode_double_as_other_langs()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1093,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - write_fn
    - strict
    argTypes:
    - F
    - bool
    constantsTouched: []
    func_position:
      end: 1096
      start: 1089
    functionDepth: 4
    functionLinenumber: 1089
    functionLinenumberEnd: 1096
    functionName: tests::assert_no_write
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    linkageType: ''
    returnType: void
    signature: 'fn assert_no_write<F>(mut write_fn: F, strict: bool)whereF: FnMut(&mut
      TBinaryOutputProtocol<WriteHalf<TBufferChannel>>) -> crate::Result<()>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3043,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3047,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3049,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3056,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3057
      start: 3042
    functionDepth: 4
    functionLinenumber: 3042
    functionLinenumberEnd: 3057
    functionName: tests::must_read_boolean_list
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_boolean_list()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3061,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3065,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3067,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3074,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3075
      start: 3060
    functionDepth: 4
    functionLinenumber: 3060
    functionLinenumberEnd: 3075
    functionName: tests::must_read_boolean_list_alternative_encoding
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_boolean_list_alternative_encoding()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1100,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1101,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1101,1
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1103,1
    - Dst: TConfigurationBuilder::max_recursion_depth
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1103,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1104,1
    - Dst: Self::build
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1103,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1103,1
    - Dst: TBinaryInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1107,1
    - Dst: Self::read_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1099
    functionDepth: 4
    functionLinenumber: 1099
    functionLinenumberEnd: 1128
    functionName: tests::must_enforce_recursion_depth_limit
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Some
    - TBinaryInputProtocol::with_config
    - TBufferChannel::split
    - TBufferChannel::with_capacity
    - thrift::Result::unwrap
    - TConfigurationBuilder::max_recursion_depth
    - Self::build
    - TConfiguration::builder
    - Self::read_struct_begin
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_enforce_recursion_depth_limit()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3109,1
    - Dst: TConfigurationBuilder::max_message_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3109,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3110,1
    - Dst: Self::max_frame_size
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3109,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3111,1
    - Dst: Option::build
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3109,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3109,1
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3114,1
    - Dst: TCompactInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3115,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3119,1
    - Dst: TCompactInputProtocol::read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3135
      start: 3107
    functionDepth: 4
    functionLinenumber: 3107
    functionLinenumberEnd: 3135
    functionName: tests::must_check_container_size_overflow
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - Self::max_frame_size
    - Some
    - set_readable_bytes
    - TCompactInputProtocol::with_config
    - TBufferChannel::with_capacity
    - TCompactInputProtocol::read_list_begin
    - thrift::Result::unwrap
    - TConfigurationBuilder::max_message_size
    - TConfiguration::builder
    - Option::build
    linkageType: ''
    returnType: void
    signature: fn must_check_container_size_overflow()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1132,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1133,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1133,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1135,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1137,1
    - Dst: Self::read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1131
    functionDepth: 3
    functionLinenumber: 1131
    functionLinenumberEnd: 1147
    functionName: tests::must_reject_negative_container_sizes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::new
    - set_readable_bytes
    - Self::read_list_begin
    - TBufferChannel::split
    - TBufferChannel::with_capacity
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_reject_negative_container_sizes()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1151,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1152,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1152,1
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1154,1
    - Dst: TConfigurationBuilder::max_container_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1154,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1155,1
    - Dst: Self::build
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1154,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1154,1
    - Dst: TBinaryInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1159,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1161,1
    - Dst: Self::read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1174
      start: 1150
    functionDepth: 4
    functionLinenumber: 1150
    functionLinenumberEnd: 1174
    functionName: tests::must_enforce_container_size_limit
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Some
    - TConfigurationBuilder::max_container_size
    - set_readable_bytes
    - Self::read_list_begin
    - TBinaryInputProtocol::with_config
    - TBufferChannel::split
    - TBufferChannel::with_capacity
    - thrift::Result::unwrap
    - Self::build
    - TConfiguration::builder
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_enforce_container_size_limit()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3195,1
    - Dst: TCompactInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3197,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3197,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3202,1
    - Dst: thrift::Result::read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3221
      start: 3193
    functionDepth: 3
    functionLinenumber: 3193
    functionLinenumberEnd: 3221
    functionName: tests::must_handle_varint_size_overflow
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - clone
    - set_readable_bytes
    - TBufferChannel::with_capacity
    - thrift::Result::read_list_begin
    - TCompactInputProtocol::new
    linkageType: ''
    returnType: void
    signature: fn must_handle_varint_size_overflow()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1206,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1207,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1207,1
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1209,1
    - Dst: TConfigurationBuilder::max_string_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1209,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1210,1
    - Dst: Self::build
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1209,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1209,1
    - Dst: TBinaryInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1213,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1215,1
    - Dst: Self::read_string
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1205
    functionDepth: 4
    functionLinenumber: 1205
    functionLinenumberEnd: 1228
    functionName: tests::must_enforce_string_size_limit
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TConfigurationBuilder::max_string_size
    - Some
    - set_readable_bytes
    - TBinaryInputProtocol::with_config
    - TBufferChannel::split
    - TBufferChannel::with_capacity
    - Self::read_string
    - thrift::Result::unwrap
    - Self::build
    - TConfiguration::builder
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_enforce_string_size_limit()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3253,1
    - Dst: TConfiguration::no_limits
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3255,1
    - Dst: TCompactInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/compact.rs:3256,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 3266
      start: 3252
    functionDepth: 2
    functionLinenumber: 3252
    functionLinenumberEnd: 3266
    functionName: tests::must_allow_no_limit_configuration
    functionSourceFile: /src/thrift/lib/rs/src/protocol/compact.rs
    functionUses: 0
    functionsReached:
    - TConfiguration::no_limits
    - TCompactInputProtocol::with_config
    - TBufferChannel::with_capacity
    linkageType: ''
    returnType: void
    signature: fn must_allow_no_limit_configuration()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1178,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1179,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1179,1
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1182,1
    - Dst: TConfigurationBuilder::max_container_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1182,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1183,1
    - Dst: Self::build
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1182,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1182,1
    - Dst: TBinaryInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1186,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1189,1
    - Dst: to_be_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1189,1
    - Dst: extend_from_slice
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1192,1
    - Dst: to_be_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1192,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1195,1
    - Dst: Self::read_list_begin
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1197,1
    - Dst: Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1177
    functionDepth: 4
    functionLinenumber: 1177
    functionLinenumberEnd: 1202
    functionName: tests::must_allow_containers_within_limit
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - to_be_bytes
    - Some
    - TConfigurationBuilder::max_container_size
    - set_readable_bytes
    - Self::read_list_begin
    - TBinaryInputProtocol::with_config
    - TBufferChannel::split
    - TBufferChannel::with_capacity
    - extend_from_slice
    - thrift::Result::unwrap
    - Result::unwrap
    - Self::build
    - TConfiguration::builder
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_allow_containers_within_limit()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1232,1
    - Dst: TBufferChannel::split
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1233,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1233,1
    - Dst: TConfiguration::builder
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1235,1
    - Dst: TConfigurationBuilder::max_string_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1235,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1236,1
    - Dst: Self::build
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1235,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1235,1
    - Dst: TBinaryInputProtocol::with_config
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1239,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1241,1
    - Dst: Self::read_string
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1231
    functionDepth: 4
    functionLinenumber: 1231
    functionLinenumberEnd: 1246
    functionName: tests::must_allow_strings_within_limit
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TConfigurationBuilder::max_string_size
    - Some
    - set_readable_bytes
    - TBinaryInputProtocol::with_config
    - TBufferChannel::split
    - TBufferChannel::with_capacity
    - Self::read_string
    - thrift::Result::unwrap
    - Self::build
    - TConfiguration::builder
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn must_allow_strings_within_limit()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::with_config
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:73,1
    - Dst: TConfiguration::default
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - transport
    - strict
    argTypes:
    - T
    - bool
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: TBinaryInputProtocol::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 9
    functionsReached:
    - Self::with_config
    - TConfiguration::default
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(transport: T, strict: bool) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - transport
    - strict
    - config
    argTypes:
    - T
    - bool
    - TConfiguration
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: TBinaryInputProtocol::with_config
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn with_config(transport: T, strict: bool, config: TConfiguration)
      -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: max_recursion_depth
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:86,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:88,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:88,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:88,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 95
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 95
    functionName: TBinaryInputProtocol::check_recursion_depth
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    - ProtocolError::new
    - max_recursion_depth
    linkageType: ''
    returnType: crate::Result
    signature: fn check_recursion_depth(&self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:106,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:115,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:115,1
    - Dst: TryFrom::try_from
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:120,1
    - Dst: TBinaryInputProtocol::read_string
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:121,1
    - Dst: TBinaryInputProtocol::read_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:122,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:123,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:123,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:131,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:131,1
    - Dst: BigEndian::read_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:139,1
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:141,1
    - Dst: String::from_utf8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:142,1
    - Dst: TBinaryInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:145,1
    - Dst: crate::Result::and_then
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:145,1
    - Dst: TBinaryInputProtocol::read_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:146,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:147,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:147,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 61
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 150
      start: 103
    functionDepth: 3
    functionLinenumber: 103
    functionLinenumberEnd: 150
    functionName: TBinaryInputProtocol::read_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - crate::Error::Protocol
    - TBinaryInputProtocol::read_i32
    - TryFrom::try_from
    - Err
    - Ok
    - String::from_utf8
    - TMessageIdentifier::new
    - TBinaryInputProtocol::read_byte
    - TBinaryInputProtocol::read_string
    - crate::Result::and_then
    - read_exact
    - BigEndian::read_i32
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_begin(&mut self) -> crate::Result<TMessageIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: TBinaryInputProtocol::read_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryInputProtocol::check_recursion_depth
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:157,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 160
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 160
    functionName: TBinaryInputProtocol::read_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::check_recursion_depth
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_begin(&mut self) -> crate::Result<Option<TStructIdentifier>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: TBinaryInputProtocol::read_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:168,1
    - Dst: field_type_from_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:169,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:171,1
    - Dst: TBinaryInputProtocol::read_i16
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:172,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:174,1
    - Dst: TFieldIdentifier::new::<Option<String>, String, i16>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 177
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 177
    functionName: TBinaryInputProtocol::read_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::read_i16
    - Ok
    - TBinaryInputProtocol::read_byte
    - field_type_from_u8
    - TFieldIdentifier::new::<Option<String>, String, i16>
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_begin(&mut self) -> crate::Result<TFieldIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: TBinaryInputProtocol::read_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.read_i32::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:184,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:187,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:187,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:187,1
    - Dst: max_string_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:193,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:195,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:195,1
    - Dst: ProtocolError::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:195,1
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:206,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:206,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:206,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 210
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 210
    functionName: TBinaryInputProtocol::read_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - crate::Error::Protocol
    - map
    - Err
    - max_string_size
    - ProtocolError::new
    - map_err
    - read_exact
    - transport.read_i32::<BigEndian>
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bytes(&mut self) -> crate::Result<Vec<u8>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryInputProtocol::read_i8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:213,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:215,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 218
      start: 212
    functionDepth: 3
    functionLinenumber: 212
    functionLinenumberEnd: 218
    functionName: TBinaryInputProtocol::read_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    - TBinaryInputProtocol::read_i8
    linkageType: ''
    returnType: crate::Result
    signature: fn read_bool(&mut self) -> crate::Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_i8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:221,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 2
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: TBinaryInputProtocol::read_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - map_err
    - read_i8
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i8(&mut self) -> crate::Result<i8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.read_i16::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:225,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: TBinaryInputProtocol::read_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - transport.read_i16::<BigEndian>
    - map_err
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i16(&mut self) -> crate::Result<i16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.read_i32::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:229,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: TBinaryInputProtocol::read_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 4
    functionsReached:
    - map_err
    - transport.read_i32::<BigEndian>
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i32(&mut self) -> crate::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.read_i64::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:233,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: TBinaryInputProtocol::read_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - transport.read_i64::<BigEndian>
    - map_err
    linkageType: ''
    returnType: crate::Result
    signature: fn read_i64(&mut self) -> crate::Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.read_f64::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:237,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 238
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionName: TBinaryInputProtocol::read_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - map_err
    - transport.read_f64::<BigEndian>
    linkageType: ''
    returnType: crate::Result
    signature: fn read_double(&mut self) -> crate::Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_exact
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:242,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:242,1
    - Dst: uuid::Uuid::from_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:244,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 246
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 246
    functionName: TBinaryInputProtocol::read_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - map_err
    - read_exact
    - uuid::Uuid::from_bytes
    - map
    linkageType: ''
    returnType: crate::Result
    signature: fn read_uuid(&mut self) -> crate::Result<uuid::Uuid>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryInputProtocol::read_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:249,1
    - Dst: String::from_utf8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:250,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 251
      start: 248
    functionDepth: 2
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionName: TBinaryInputProtocol::read_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - map_err
    - String::from_utf8
    - TBinaryInputProtocol::read_bytes
    linkageType: ''
    returnType: crate::Result
    signature: fn read_string(&mut self) -> crate::Result<String>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:254,1
    - Dst: crate::Result::and_then
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:254,1
    - Dst: TBinaryInputProtocol::read_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:255,1
    - Dst: TBinaryInputProtocol::min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:256,1
    - Dst: super::check_container_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:257,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:258,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:258,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 259
      start: 253
    functionDepth: 2
    functionLinenumber: 253
    functionLinenumberEnd: 259
    functionName: TBinaryInputProtocol::read_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::read_i32
    - TListIdentifier::new
    - super::check_container_size
    - Ok
    - TBinaryInputProtocol::read_byte
    - TBinaryInputProtocol::min_serialized_size
    - crate::Result::and_then
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_begin(&mut self) -> crate::Result<TListIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 263
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionName: TBinaryInputProtocol::read_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:266,1
    - Dst: crate::Result::and_then
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:266,1
    - Dst: TBinaryInputProtocol::read_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:267,1
    - Dst: TBinaryInputProtocol::min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:268,1
    - Dst: super::check_container_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:269,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:270,1
    - Dst: TSetIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:270,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 2
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: TBinaryInputProtocol::read_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::read_i32
    - super::check_container_size
    - Ok
    - TBinaryInputProtocol::read_byte
    - TBinaryInputProtocol::min_serialized_size
    - crate::Result::and_then
    - TSetIdentifier::new
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_begin(&mut self) -> crate::Result<TSetIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 275
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionName: TBinaryInputProtocol::read_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:278,1
    - Dst: crate::Result::and_then
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:278,1
    - Dst: TBinaryInputProtocol::read_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:279,1
    - Dst: crate::Result::and_then
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:279,1
    - Dst: TBinaryInputProtocol::read_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:280,1
    - Dst: TBinaryInputProtocol::min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:282,1
    - Dst: TBinaryInputProtocol::min_serialized_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:283,1
    - Dst: super::check_container_size
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:285,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:287,1
    - Dst: TMapIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:287,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 288
      start: 277
    functionDepth: 2
    functionLinenumber: 277
    functionLinenumberEnd: 288
    functionName: TBinaryInputProtocol::read_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::read_i32
    - super::check_container_size
    - Ok
    - TMapIdentifier::new
    - TBinaryInputProtocol::read_byte
    - TBinaryInputProtocol::min_serialized_size
    - crate::Result::and_then
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_begin(&mut self) -> crate::Result<TMapIdentifier>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 292
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionName: TBinaryInputProtocol::read_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn read_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:298,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 299
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionName: TBinaryInputProtocol::read_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 5
    functionsReached:
    - read_u8
    - map_err
    linkageType: ''
    returnType: crate::Result
    signature: fn read_byte(&mut self) -> crate::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 319
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 319
    functionName: TBinaryInputProtocol::min_serialized_size
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'fn min_serialized_size(&self, field_type: TType) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 330
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 330
    functionName: TBinaryInputProtocolFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TBinaryInputProtocolFactory
    signature: pub fn new() -> TBinaryInputProtocolFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:335,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - transport
    argTypes:
    - Box<dyn TReadTransport + Send>
    constantsTouched: []
    func_position:
      end: 336
      start: 334
    functionDepth: 3
    functionLinenumber: 334
    functionLinenumberEnd: 336
    functionName: TBinaryInputProtocolFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::new
    - Box::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self, transport: Box<dyn TReadTransport + Send>) -> Box<dyn
      TInputProtocol + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - transport
    - strict
    argTypes:
    - T
    - bool
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: TBinaryOutputProtocol::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: TBinaryOutputProtocol
    signature: 'pub fn new(transport: T, strict: bool) -> TBinaryOutputProtocol<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:389,1
    - Dst: transport.write_u32::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:391,1
    - Dst: TBinaryOutputProtocol::write_string
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:392,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:393,1
    - Dst: TBinaryOutputProtocol::write_string
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:395,1
    - Dst: TBinaryOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:396,1
    - Dst: into
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:396,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:397,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMessageIdentifier'
    constantsTouched: []
    func_position:
      end: 399
      start: 387
    functionDepth: 3
    functionLinenumber: 387
    functionLinenumberEnd: 399
    functionName: TBinaryOutputProtocol::write_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryOutputProtocol::write_byte
    - into
    - transport.write_u32::<BigEndian>
    - TBinaryOutputProtocol::write_string
    - TBinaryOutputProtocol::write_i32
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_message_begin(&mut self, identifier: &TMessageIdentifier)
      -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 403
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionName: TBinaryOutputProtocol::write_message_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_message_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames: []
    argTypes:
    - '&TStructIdentifier'
    constantsTouched: []
    func_position:
      end: 407
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 407
    functionName: TBinaryOutputProtocol::write_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 3
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_struct_begin(&mut self, _: &TStructIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 411
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 411
    functionName: TBinaryOutputProtocol::write_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 3
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_struct_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_none
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:414,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:415,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:415,1
    - Dst: TBinaryOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:424,1
    - Dst: field_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:424,1
    - Dst: TBinaryOutputProtocol::write_i16
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:426,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:428,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TFieldIdentifier'
    constantsTouched: []
    func_position:
      end: 430
      start: 413
    functionDepth: 1
    functionLinenumber: 413
    functionLinenumberEnd: 430
    functionName: TBinaryOutputProtocol::write_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 3
    functionsReached:
    - crate::Error::Protocol
    - is_none
    - TBinaryOutputProtocol::write_byte
    - field_type_to_u8
    - Err
    - Ok
    - TBinaryOutputProtocol::write_i16
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_field_begin(&mut self, identifier: &TFieldIdentifier) ->
      crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 434
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 434
    functionName: TBinaryOutputProtocol::write_field_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 3
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:437,1
    - Dst: field_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 438
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionName: TBinaryOutputProtocol::write_field_stop
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 3
    functionsReached:
    - field_type_to_u8
    - TBinaryOutputProtocol::write_byte
    linkageType: ''
    returnType: crate::Result
    signature: fn write_field_stop(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:441,1
    - Dst: '&[u8]::len'
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:441,1
    - Dst: write_all
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:442,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - b
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 443
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 443
    functionName: TBinaryOutputProtocol::write_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - map_err
    - '&[u8]::len'
    - write_all
    - TBinaryOutputProtocol::write_i32
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bytes(&mut self, b: &[u8]) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryOutputProtocol::write_i8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:447,1
    - Dst: TBinaryOutputProtocol::write_i8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:449,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - b
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 451
      start: 445
    functionDepth: 3
    functionLinenumber: 445
    functionLinenumberEnd: 451
    functionName: TBinaryOutputProtocol::write_bool
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryOutputProtocol::write_i8
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_bool(&mut self, b: bool) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_i8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:454,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 455
      start: 453
    functionDepth: 2
    functionLinenumber: 453
    functionLinenumberEnd: 455
    functionName: TBinaryOutputProtocol::write_i8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - map_err
    - write_i8
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i8(&mut self, i: i8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.write_i16::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:458,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i16
    constantsTouched: []
    func_position:
      end: 459
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionName: TBinaryOutputProtocol::write_i16
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - map_err
    - transport.write_i16::<BigEndian>
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i16(&mut self, i: i16) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.write_i32::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:462,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 463
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 463
    functionName: TBinaryOutputProtocol::write_i32
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 8
    functionsReached:
    - map_err
    - transport.write_i32::<BigEndian>
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i32(&mut self, i: i32) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.write_i64::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:466,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 467
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 467
    functionName: TBinaryOutputProtocol::write_i64
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - map_err
    - transport.write_i64::<BigEndian>
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_i64(&mut self, i: i64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transport.write_f64::<BigEndian>
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:470,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - d
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 471
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 471
    functionName: TBinaryOutputProtocol::write_double
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - map_err
    - transport.write_f64::<BigEndian>
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_double(&mut self, d: f64) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryOutputProtocol::write_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:474,1
    - Dst: Result::as_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 475
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 475
    functionName: TBinaryOutputProtocol::write_string
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - Result::as_bytes
    - TBinaryOutputProtocol::write_bytes
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_string(&mut self, s: &str) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_all
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:478,1
    - Dst: thrift::Result::as_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:479,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - uuid
    argTypes:
    - '&uuid::Uuid'
    constantsTouched: []
    func_position:
      end: 481
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 481
    functionName: TBinaryOutputProtocol::write_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::as_bytes
    - map_err
    - write_all
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_uuid(&mut self, uuid: &uuid::Uuid) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:484,1
    - Dst: field_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:484,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TListIdentifier'
    constantsTouched: []
    func_position:
      end: 486
      start: 483
    functionDepth: 1
    functionLinenumber: 483
    functionLinenumberEnd: 486
    functionName: TBinaryOutputProtocol::write_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - field_type_to_u8
    - TBinaryOutputProtocol::write_i32
    - TBinaryOutputProtocol::write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_list_begin(&mut self, identifier: &TListIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 490
      start: 488
    functionDepth: 0
    functionLinenumber: 488
    functionLinenumberEnd: 490
    functionName: TBinaryOutputProtocol::write_list_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_list_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBinaryOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:493,1
    - Dst: field_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:493,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TSetIdentifier'
    constantsTouched: []
    func_position:
      end: 495
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 495
    functionName: TBinaryOutputProtocol::write_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - field_type_to_u8
    - TBinaryOutputProtocol::write_i32
    - TBinaryOutputProtocol::write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_set_begin(&mut self, identifier: &TSetIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 499
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionName: TBinaryOutputProtocol::write_set_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_set_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:502,1
    - Dst: TBinaryOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:505,1
    - Dst: field_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:505,1
    - Dst: expect
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:506,1
    - Dst: TBinaryOutputProtocol::write_byte
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:509,1
    - Dst: field_type_to_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:509,1
    - Dst: TBinaryOutputProtocol::write_i32
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:510,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - identifier
    argTypes:
    - '&TMapIdentifier'
    constantsTouched: []
    func_position:
      end: 511
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 511
    functionName: TBinaryOutputProtocol::write_map_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - field_type_to_u8
    - expect
    - TBinaryOutputProtocol::write_i32
    - TBinaryOutputProtocol::write_byte
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_map_begin(&mut self, identifier: &TMapIdentifier) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 515
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 515
    functionName: TBinaryOutputProtocol::write_map_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: fn write_map_end(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: flush
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:518,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 519
      start: 517
    functionDepth: 2
    functionLinenumber: 517
    functionLinenumberEnd: 519
    functionName: TBinaryOutputProtocol::flush
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - flush
    - map_err
    linkageType: ''
    returnType: crate::Result
    signature: fn flush(&mut self) -> crate::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: write_u8
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:525,1
    - Dst: map_err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 526
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 526
    functionName: TBinaryOutputProtocol::write_byte
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 6
    functionsReached:
    - map_err
    - write_u8
    linkageType: ''
    returnType: crate::Result
    signature: 'fn write_byte(&mut self, b: u8) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 537
      start: 535
    functionDepth: 0
    functionLinenumber: 535
    functionLinenumberEnd: 537
    functionName: TBinaryOutputProtocolFactory::new
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TBinaryOutputProtocolFactory
    signature: pub fn new() -> TBinaryOutputProtocolFactory
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:545,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - transport
    argTypes:
    - Box<dyn TWriteTransport + Send>
    constantsTouched: []
    func_position:
      end: 546
      start: 541
    functionDepth: 1
    functionLinenumber: 541
    functionLinenumberEnd: 546
    functionName: TBinaryOutputProtocolFactory::create
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - TBinaryOutputProtocol::new
    - Box::new
    linkageType: ''
    returnType: Box
    signature: 'fn create(&self,transport: Box<dyn TWriteTransport + Send>,) -> Box<dyn
      TOutputProtocol + Send>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - field_type
    argTypes:
    - TType
    constantsTouched: []
    func_position:
      end: 566
      start: 549
    functionDepth: 0
    functionLinenumber: 549
    functionLinenumberEnd: 566
    functionName: field_type_to_u8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'fn field_type_to_u8(field_type: TType) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:570,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:571,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:572,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:573,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:574,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:575,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:576,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:577,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:578,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:579,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:580,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:581,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:582,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:583,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:584,1
    - Dst: crate::Error::Protocol
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:584,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - b
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 589
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 589
    functionName: field_type_from_u8
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 1
    functionsReached:
    - crate::Error::Protocol
    - Err
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'fn field_type_from_u8(b: u8) -> crate::Result<TType>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:603,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:605,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 629
      start: 602
    functionDepth: 4
    functionLinenumber: 602
    functionLinenumberEnd: 629
    functionName: tests::must_write_strict_message_call_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_strict_message_call_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:633,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:635,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 656
      start: 632
    functionDepth: 4
    functionLinenumber: 632
    functionLinenumberEnd: 656
    functionName: tests::must_write_non_strict_message_call_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_non_strict_message_call_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:660,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:662,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 686
      start: 659
    functionDepth: 4
    functionLinenumber: 659
    functionLinenumberEnd: 686
    functionName: tests::must_write_strict_message_reply_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_strict_message_reply_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:690,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:692,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 713
      start: 689
    functionDepth: 4
    functionLinenumber: 689
    functionLinenumberEnd: 713
    functionName: tests::must_write_non_strict_message_reply_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_non_strict_message_reply_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:717,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:719,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:722,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 726
      start: 716
    functionDepth: 4
    functionLinenumber: 716
    functionLinenumberEnd: 726
    functionName: tests::must_round_trip_strict_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_strict_message_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:730,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:732,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:735,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 739
      start: 729
    functionDepth: 4
    functionLinenumber: 729
    functionLinenumberEnd: 739
    functionName: tests::must_round_trip_non_strict_message_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TMessageIdentifier::new
    - assert_success
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_non_strict_message_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: assert_no_write
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:748,1
    - Dst: write_struct_begin
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:749,1
    - Dst: TStructIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 752
      start: 747
    functionDepth: 5
    functionLinenumber: 747
    functionLinenumberEnd: 752
    functionName: tests::must_write_struct_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - write_struct_begin
    - TStructIdentifier::new
    - assert_no_write
    linkageType: ''
    returnType: void
    signature: fn must_write_struct_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: assert_no_write
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:756,1
    - Dst: write_struct_end
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 757
      start: 755
    functionDepth: 5
    functionLinenumber: 755
    functionLinenumberEnd: 757
    functionName: tests::must_write_struct_end
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - write_struct_end
    - assert_no_write
    linkageType: ''
    returnType: void
    signature: fn must_write_struct_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:761,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 769
      start: 760
    functionDepth: 4
    functionLinenumber: 760
    functionLinenumberEnd: 769
    functionName: tests::must_write_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_field_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:773,1
    - Dst: TFieldIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:775,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:778,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:783,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 787
      start: 772
    functionDepth: 4
    functionLinenumber: 772
    functionLinenumberEnd: 787
    functionName: tests::must_round_trip_field_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - Some
    - test_objects
    - assert_success
    - TFieldIdentifier::new
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_field_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:791,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:796,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 797
      start: 790
    functionDepth: 4
    functionLinenumber: 790
    functionLinenumberEnd: 797
    functionName: tests::must_write_stop_field
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_stop_field()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:801,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:805,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:810,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 815
      start: 800
    functionDepth: 4
    functionLinenumber: 800
    functionLinenumberEnd: 815
    functionName: tests::must_round_trip_field_stop
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - copy_write_buffer_to_read_buffer
    - Some
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_field_stop()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:824,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 832
      start: 823
    functionDepth: 4
    functionLinenumber: 823
    functionLinenumberEnd: 832
    functionName: tests::must_write_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_list_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:836,1
    - Dst: TListIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:838,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:847,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:849,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 858
      start: 835
    functionDepth: 4
    functionLinenumber: 835
    functionLinenumberEnd: 858
    functionName: tests::must_round_trip_list_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - copy_write_buffer_to_read_buffer
    - TListIdentifier::new
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_list_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:867,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 875
      start: 866
    functionDepth: 4
    functionLinenumber: 866
    functionLinenumberEnd: 875
    functionName: tests::must_write_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_set_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:879,1
    - Dst: TSetIdentifier::new
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:881,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:889,1
    - Dst: read_set_begin
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 900
      start: 878
    functionDepth: 4
    functionLinenumber: 878
    functionLinenumberEnd: 900
    functionName: tests::must_round_trip_set_begin
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - TSetIdentifier::new
    - read_set_begin
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_set_begin()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:952,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:957,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 958
      start: 951
    functionDepth: 4
    functionLinenumber: 951
    functionLinenumberEnd: 958
    functionName: tests::must_write_bool_true
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_bool_true()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:962,1
    - Dst: assert_eq_written_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:967,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 968
      start: 961
    functionDepth: 4
    functionLinenumber: 961
    functionLinenumberEnd: 968
    functionName: tests::must_write_bool_false
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_eq_written_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_bool_false()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:972,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:974,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:976,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 978
      start: 971
    functionDepth: 4
    functionLinenumber: 971
    functionLinenumberEnd: 978
    functionName: tests::must_read_bool_true
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_bool_true()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:982,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:984,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:986,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 988
      start: 981
    functionDepth: 4
    functionLinenumber: 981
    functionLinenumberEnd: 988
    functionName: tests::must_read_bool_false
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_read_bool_false()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:992,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:994,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:996,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 998
      start: 991
    functionDepth: 4
    functionLinenumber: 991
    functionLinenumberEnd: 998
    functionName: tests::must_allow_any_non_zero_value_to_be_interpreted_as_bool_true
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - set_readable_bytes
    linkageType: ''
    returnType: void
    signature: fn must_allow_any_non_zero_value_to_be_interpreted_as_bool_true()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1002,1
    - Dst: write_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1008,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1001
    functionDepth: 4
    functionLinenumber: 1001
    functionLinenumberEnd: 1011
    functionName: tests::must_write_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - write_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_bytes()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1015,1
    - Dst: uuid::Uuid::new_v4
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1016,1
    - Dst: write_bytes
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1014
    functionDepth: 4
    functionLinenumber: 1014
    functionLinenumberEnd: 1020
    functionName: tests::must_write_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - uuid::Uuid::new_v4
    - write_bytes
    linkageType: ''
    returnType: void
    signature: fn must_write_uuid()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1024,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1027,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1028,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1023
    functionDepth: 4
    functionLinenumber: 1023
    functionLinenumberEnd: 1030
    functionName: tests::must_round_trip_uuid
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_uuid()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_objects
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1034,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1067,1
    - Dst: assert_success
      Src: /src/thrift/lib/rs/src/protocol/binary.rs:1069,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1071
      start: 1033
    functionDepth: 4
    functionLinenumber: 1033
    functionLinenumberEnd: 1071
    functionName: tests::must_round_trip_bytes
    functionSourceFile: /src/thrift/lib/rs/src/protocol/binary.rs
    functionUses: 0
    functionsReached:
    - test_objects
    - assert_success
    - copy_write_buffer_to_read_buffer
    linkageType: ''
    returnType: void
    signature: fn must_round_trip_bytes()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/server/threaded.rs:168,1
    - Dst: ThreadPool::with_name
      Src: /src/thrift/lib/rs/src/server/threaded.rs:169,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/src/server/threaded.rs:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - read_transport_factory
    - input_protocol_factory
    - write_transport_factory
    - output_protocol_factory
    - processor
    - num_workers
    argTypes:
    - RTF
    - IPF
    - WTF
    - OPF
    - PRC
    - usize
    constantsTouched: []
    func_position:
      end: 171
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 171
    functionName: TServer::new
    functionSourceFile: /src/thrift/lib/rs/src/server/threaded.rs
    functionUses: 3
    functionsReached:
    - Arc::new
    - '&str::to_owned'
    - ThreadPool::with_name
    linkageType: ''
    returnType: TServer
    signature: 'pub fn new(read_transport_factory: RTF,input_protocol_factory: IPF,write_transport_factory:
      WTF,output_protocol_factory: OPF,processor: PRC,num_workers: usize,) -> TServer<PRC,
      RTF, IPF, WTF, OPF>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TcpListener::bind
      Src: /src/thrift/lib/rs/src/server/threaded.rs:182,1
    - Dst: incoming
      Src: /src/thrift/lib/rs/src/server/threaded.rs:183,1
    - Dst: Result::set_nodelay
      Src: /src/thrift/lib/rs/src/server/threaded.rs:186,1
    - Dst: ok
      Src: /src/thrift/lib/rs/src/server/threaded.rs:186,1
    - Dst: TTcpChannel::with_stream
      Src: /src/thrift/lib/rs/src/server/threaded.rs:187,1
    - Dst: TServer::handle_stream
      Src: /src/thrift/lib/rs/src/server/threaded.rs:188,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/server/threaded.rs:196,1
    - Dst: crate::Error::Application
      Src: /src/thrift/lib/rs/src/server/threaded.rs:196,1
    - Dst: '&str::into'
      Src: /src/thrift/lib/rs/src/server/threaded.rs:198,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 1
    argNames:
    - listen_address
    argTypes:
    - A
    constantsTouched: []
    func_position:
      end: 200
      start: 181
    functionDepth: 12
    functionLinenumber: 181
    functionLinenumberEnd: 200
    functionName: TServer::listen
    functionSourceFile: /src/thrift/lib/rs/src/server/threaded.rs
    functionUses: 0
    functionsReached:
    - ok
    - incoming
    - TcpListener::bind
    - crate::Error::Application
    - TServer::handle_stream
    - Err
    - Result::set_nodelay
    - TTcpChannel::with_stream
    - '&str::into'
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn listen<A: ToSocketAddrs>(&mut self, listen_address: A) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: UnixListener::bind
      Src: /src/thrift/lib/rs/src/server/threaded.rs:212,1
    - Dst: incoming
      Src: /src/thrift/lib/rs/src/server/threaded.rs:213,1
    - Dst: TServer::handle_stream
      Src: /src/thrift/lib/rs/src/server/threaded.rs:216,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/server/threaded.rs:227,1
    - Dst: crate::Error::Application
      Src: /src/thrift/lib/rs/src/server/threaded.rs:227,1
    - Dst: '&str::into'
      Src: /src/thrift/lib/rs/src/server/threaded.rs:229,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - listen_path
    argTypes:
    - P
    constantsTouched: []
    func_position:
      end: 231
      start: 211
    functionDepth: 12
    functionLinenumber: 211
    functionLinenumberEnd: 231
    functionName: TServer::listen_uds
    functionSourceFile: /src/thrift/lib/rs/src/server/threaded.rs
    functionUses: 0
    functionsReached:
    - incoming
    - crate::Error::Application
    - TServer::handle_stream
    - Err
    - UnixListener::bind
    - '&str::into'
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn listen_uds<P: AsRef<Path>>(&mut self, listen_path: P) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TServer::new_protocols_for_connection
      Src: /src/thrift/lib/rs/src/server/threaded.rs:234,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/threaded.rs:235,1
    - Dst: execute
      Src: /src/thrift/lib/rs/src/server/threaded.rs:236,1
    - Dst: handle_incoming_connection
      Src: /src/thrift/lib/rs/src/server/threaded.rs:237,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/server/threaded.rs:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - stream
    argTypes:
    - S
    constantsTouched: []
    func_position:
      end: 239
      start: 233
    functionDepth: 11
    functionLinenumber: 233
    functionLinenumberEnd: 239
    functionName: TServer::handle_stream
    functionSourceFile: /src/thrift/lib/rs/src/server/threaded.rs
    functionUses: 2
    functionsReached:
    - clone
    - handle_incoming_connection
    - Ok
    - execute
    - TServer::new_protocols_for_connection
    linkageType: ''
    returnType: crate::Result
    signature: 'fn handle_stream<S: TIoChannel + Send + ''static>(&mut self, stream:
      S) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split
      Src: /src/thrift/lib/rs/src/server/threaded.rs:250,1
    - Dst: create
      Src: /src/thrift/lib/rs/src/server/threaded.rs:253,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/server/threaded.rs:253,1
    - Dst: create
      Src: /src/thrift/lib/rs/src/server/threaded.rs:254,1
    - Dst: create
      Src: /src/thrift/lib/rs/src/server/threaded.rs:257,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/server/threaded.rs:257,1
    - Dst: create
      Src: /src/thrift/lib/rs/src/server/threaded.rs:258,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/server/threaded.rs:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - stream
    argTypes:
    - S
    constantsTouched: []
    func_position:
      end: 261
      start: 241
    functionDepth: 3
    functionLinenumber: 241
    functionLinenumberEnd: 261
    functionName: TServer::new_protocols_for_connection
    functionSourceFile: /src/thrift/lib/rs/src/server/threaded.rs
    functionUses: 1
    functionsReached:
    - create
    - split
    - Box::new
    - Ok
    linkageType: ''
    returnType: crate::Result
    signature: 'fn new_protocols_for_connection<S: TIoChannel + Send + ''static>(&mut
      self,stream: S,) -> crate::Result<(Box<dyn TInputProtocol + Send>,Box<dyn TOutputProtocol
      + Send>,)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: process
      Src: /src/thrift/lib/rs/src/server/threaded.rs:274,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - processor
    - i_prot
    - o_prot
    argTypes:
    - Arc<PRC>
    - Box<dyn TInputProtocol>
    - Box<dyn TOutputProtocol>
    constantsTouched: []
    func_position:
      end: 286
      start: 264
    functionDepth: 10
    functionLinenumber: 264
    functionLinenumberEnd: 286
    functionName: handle_incoming_connection
    functionSourceFile: /src/thrift/lib/rs/src/server/threaded.rs
    functionUses: 1
    functionsReached:
    - process
    linkageType: ''
    returnType: void
    signature: 'fn handle_incoming_connection<PRC>(processor: Arc<PRC>,i_prot: Box<dyn
      TInputProtocol>,o_prot: Box<dyn TOutputProtocol>,) wherePRC: TProcessor,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Mutex::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:60,1
    - Dst: HashMap::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 65
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionName: TMultiplexedProcessor::new
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 4
    functionsReached:
    - Mutex::new
    - HashMap::new
    linkageType: ''
    returnType: TMultiplexedProcessor
    signature: pub fn new() -> TMultiplexedProcessor
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: lock
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:82,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:82,1
    - Dst: into
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:84,1
    - Dst: contains_key
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:85,1
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:86,1
    - Dst: is_none
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:89,1
    - Dst: insert
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:90,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:90,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:91,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:91,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:92,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:94,1
    - Dst: '&str::into'
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:94,1
    - Dst: insert
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:97,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:98,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:101,1
    - Dst: into
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 48
    argCount: 3
    argNames:
    - service_name
    - processor
    - as_default
    argTypes:
    - S
    - Box<dyn TProcessor + Send + Sync>
    - bool
    constantsTouched: []
    func_position:
      end: 103
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 103
    functionName: TMultiplexedProcessor::register
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - is_none
    - clone
    - Some
    - insert
    - into
    - Err
    - Ok
    - Arc::new
    - lock
    - contains_key
    - unwrap
    - '&str::into'
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn register<S: Into<String>>(&mut self,service_name: S,processor:
      Box<dyn TProcessor + Send + Sync>,as_default: bool,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split_ident_name
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:111,1
    - Dst: lock
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:115,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:115,1
    - Dst: get
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:117,1
    - Dst: cloned
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:117,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:119,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:125,1
    - Dst: TStoredInputProtocol::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:130,1
    - Dst: process
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:131,1
    - Dst: Err
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:133,1
    - Dst: missing_processor_message
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:133,1
    - Dst: String::into
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:133,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 34
    argCount: 3
    argNames:
    - msg_ident
    - i_prot
    - o_prot
    argTypes:
    - '&TMessageIdentifier'
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 135
      start: 105
    functionDepth: 8
    functionLinenumber: 105
    functionLinenumberEnd: 135
    functionName: TMultiplexedProcessor::process_message
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 1
    functionsReached:
    - cloned
    - clone
    - process
    - Err
    - String::into
    - TStoredInputProtocol::new
    - TMessageIdentifier::new
    - lock
    - missing_processor_message
    - get
    - unwrap
    - split_ident_name
    linkageType: ''
    returnType: crate::Result
    signature: 'fn process_message(&self,msg_ident: &TMessageIdentifier,i_prot: &mut
      dyn TInputProtocol,o_prot: &mut dyn TOutputProtocol,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut dyn TInputProtocol::read_message_begin'
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:144,1
    - Dst: TMultiplexedProcessor::process_message
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:147,1
    - Dst: super::handle_process_result
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - i_prot
    - o_prot
    argTypes:
    - '&mut dyn TInputProtocol'
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 150
      start: 139
    functionDepth: 9
    functionLinenumber: 139
    functionLinenumberEnd: 150
    functionName: TMultiplexedProcessor::process
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - '&mut dyn TInputProtocol::read_message_begin'
    - super::handle_process_result
    - TMultiplexedProcessor::process_message
    linkageType: ''
    returnType: crate::Result
    signature: 'fn process(&self,i_prot: &mut dyn TInputProtocol,o_prot: &mut dyn
      TOutputProtocol,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: lock
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:155,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 162
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 162
    functionName: TMultiplexedProcessor::fmt
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - unwrap
    - lock
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: (Option::find
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:166,1
    - Dst: map
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:166,1
    - Dst: (Option::split_at
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:169,1
    - Dst: split_at
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:170,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:171,1
    - Dst: unwrap_or
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - ident_name
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 174
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 174
    functionName: split_ident_name
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 3
    functionsReached:
    - Some
    - (Option::split_at
    - split_at
    - unwrap_or
    - (Option::find
    - map
    linkageType: ''
    returnType: (Option
    signature: 'fn split_ident_name(ident_name: &str) -> (Option<&str>, &str)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_owned
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - svc_name
    argTypes:
    - Option<&str>
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: missing_processor_message
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 2
    functionsReached:
    - to_owned
    linkageType: ''
    returnType: String
    signature: 'fn missing_processor_message(svc_name: Option<&str>) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split_ident_name
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 203
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 203
    functionName: tests::should_split_name_into_proper_separator_and_service_call
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - split_ident_name
    linkageType: ''
    returnType: void
    signature: fn should_split_name_into_proper_separator_and_service_call()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split_ident_name
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: tests::should_return_full_ident_if_no_separator_exists
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - split_ident_name
    linkageType: ''
    returnType: void
    signature: fn should_return_full_ident_if_no_separator_exists()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_objects
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:215,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:217,1
    - Dst: write_message_begin
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:218,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:218,1
    - Dst: flush
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:219,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:219,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:220,1
    - Dst: empty_write_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:221,1
    - Dst: TMultiplexedProcessor::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:223,1
    - Dst: thrift::Result::process
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:224,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:224,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:226,1
    - Dst: write_bytes
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:226,1
    - Dst: thrift::Result::read_message_begin
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:227,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:227,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:228,1
    - Dst: crate::Error::read_application_error_from_in_protocol
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:230,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:230,1
    - Dst: ApplicationError::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 236
      start: 214
    functionDepth: 4
    functionLinenumber: 214
    functionLinenumberEnd: 236
    functionName: tests::should_write_error_if_no_separator_found_and_no_default_processor_exists
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::process
    - set_readable_bytes
    - flush
    - empty_write_buffer
    - build_objects
    - TMessageIdentifier::new
    - thrift::Result::unwrap
    - copy_write_buffer_to_read_buffer
    - crate::Error::read_application_error_from_in_protocol
    - write_message_begin
    - thrift::Result::read_message_begin
    - unwrap
    - TMultiplexedProcessor::new
    - ApplicationError::new
    - write_bytes
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn should_write_error_if_no_separator_found_and_no_default_processor_exists()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_objects
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:240,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:242,1
    - Dst: write_message_begin
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:243,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:243,1
    - Dst: flush
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:244,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:244,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:245,1
    - Dst: empty_write_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:246,1
    - Dst: TMultiplexedProcessor::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:248,1
    - Dst: thrift::Result::process
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:249,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:249,1
    - Dst: set_readable_bytes
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:251,1
    - Dst: write_bytes
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:251,1
    - Dst: thrift::Result::read_message_begin
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:252,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:252,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:253,1
    - Dst: crate::Error::read_application_error_from_in_protocol
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:255,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:255,1
    - Dst: ApplicationError::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:256,1
    - Dst: missing_processor_message
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:258,1
    - Dst: Some
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 51
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 261
      start: 239
    functionDepth: 4
    functionLinenumber: 239
    functionLinenumberEnd: 261
    functionName: tests::should_write_error_if_separator_exists_and_no_processor_found
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::process
    - Some
    - set_readable_bytes
    - flush
    - empty_write_buffer
    - build_objects
    - TMessageIdentifier::new
    - thrift::Result::unwrap
    - copy_write_buffer_to_read_buffer
    - crate::Error::read_application_error_from_in_protocol
    - write_message_begin
    - thrift::Result::read_message_begin
    - unwrap
    - TMultiplexedProcessor::new
    - ApplicationError::new
    - missing_processor_message
    - write_bytes
    - crate::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn should_write_error_if_separator_exists_and_no_processor_found()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_objects
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:287,1
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:291,1
    - Dst: AtomicBool::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:291,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:293,1
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:295,1
    - Dst: AtomicBool::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:295,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:297,1
    - Dst: TMultiplexedProcessor::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:300,1
    - Dst: thrift::Result::register
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:301,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:301,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:301,1
    - Dst: thrift::Result::register
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:302,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:302,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:302,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:305,1
    - Dst: write_message_begin
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:306,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:306,1
    - Dst: flush
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:307,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:307,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:308,1
    - Dst: empty_write_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:309,1
    - Dst: thrift::Result::process
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:311,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 316
      start: 286
    functionDepth: 4
    functionLinenumber: 286
    functionLinenumberEnd: 316
    functionName: tests::should_route_call_to_correct_processor
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::process
    - clone
    - flush
    - AtomicBool::new
    - Box::new
    - crate::Result::unwrap
    - empty_write_buffer
    - Arc::new
    - build_objects
    - TMessageIdentifier::new
    - thrift::Result::unwrap
    - copy_write_buffer_to_read_buffer
    - write_message_begin
    - unwrap
    - TMultiplexedProcessor::new
    - thrift::Result::register
    linkageType: ''
    returnType: void
    signature: fn should_route_call_to_correct_processor()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_objects
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:320,1
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:324,1
    - Dst: AtomicBool::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:324,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:326,1
    - Dst: Arc::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:328,1
    - Dst: AtomicBool::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:328,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:330,1
    - Dst: TMultiplexedProcessor::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:333,1
    - Dst: thrift::Result::register
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:334,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:334,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:334,1
    - Dst: thrift::Result::register
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:335,1
    - Dst: Box::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:335,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:335,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:338,1
    - Dst: write_message_begin
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:339,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:339,1
    - Dst: flush
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:340,1
    - Dst: unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:340,1
    - Dst: copy_write_buffer_to_read_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:341,1
    - Dst: empty_write_buffer
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:342,1
    - Dst: thrift::Result::process
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:344,1
    - Dst: thrift::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 349
      start: 319
    functionDepth: 4
    functionLinenumber: 319
    functionLinenumberEnd: 349
    functionName: tests::should_route_call_to_correct_processor_if_no_separator_exists_and_default_processor_set
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - thrift::Result::process
    - clone
    - flush
    - AtomicBool::new
    - Box::new
    - crate::Result::unwrap
    - empty_write_buffer
    - Arc::new
    - build_objects
    - TMessageIdentifier::new
    - thrift::Result::unwrap
    - copy_write_buffer_to_read_buffer
    - write_message_begin
    - unwrap
    - TMultiplexedProcessor::new
    - thrift::Result::register
    linkageType: ''
    returnType: void
    signature: fn should_route_call_to_correct_processor_if_no_separator_exists_and_default_processor_set()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TBufferChannel::with_capacity
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:355,1
    - Dst: thrift::Result::split
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:356,1
    - Dst: crate::Result::unwrap
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:356,1
    - Dst: TBinaryInputProtocol::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:358,1
    - Dst: TBinaryOutputProtocol::new
      Src: /src/thrift/lib/rs/src/server/multiplexed.rs:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 361
      start: 351
    functionDepth: 3
    functionLinenumber: 351
    functionLinenumberEnd: 361
    functionName: tests::build_objects
    functionSourceFile: /src/thrift/lib/rs/src/server/multiplexed.rs
    functionUses: 0
    functionsReached:
    - TBinaryInputProtocol::new
    - TBufferChannel::with_capacity
    - TBinaryOutputProtocol::new
    - thrift::Result::split
    - crate::Result::unwrap
    linkageType: ''
    returnType: "(\n        TBinaryInputProtocol"
    signature: fn build_objects() -> (TBinaryInputProtocol<ReadHalf<TBufferChannel>>,TBinaryOutputProtocol<WriteHalf<TBufferChannel>>,)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ApplicationError::new
      Src: /src/thrift/lib/rs/src/server/mod.rs:108,1
    - Dst: TMessageIdentifier::new
      Src: /src/thrift/lib/rs/src/server/mod.rs:111,1
    - Dst: clone
      Src: /src/thrift/lib/rs/src/server/mod.rs:112,1
    - Dst: '&mut dyn TOutputProtocol::write_message_begin'
      Src: /src/thrift/lib/rs/src/server/mod.rs:117,1
    - Dst: crate::Error::write_application_error_to_out_protocol
      Src: /src/thrift/lib/rs/src/server/mod.rs:118,1
    - Dst: '&mut dyn TOutputProtocol::write_message_end'
      Src: /src/thrift/lib/rs/src/server/mod.rs:119,1
    - Dst: '&mut dyn TOutputProtocol::flush'
      Src: /src/thrift/lib/rs/src/server/mod.rs:120,1
    - Dst: Ok
      Src: /src/thrift/lib/rs/src/server/mod.rs:122,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - msg_ident
    - res
    - o_prot
    argTypes:
    - '&TMessageIdentifier'
    - crate::Result<()>
    - '&mut dyn TOutputProtocol'
    constantsTouched: []
    func_position:
      end: 124
      start: 100
    functionDepth: 3
    functionLinenumber: 100
    functionLinenumberEnd: 124
    functionName: handle_process_result
    functionSourceFile: /src/thrift/lib/rs/src/server/mod.rs
    functionUses: 3
    functionsReached:
    - clone
    - crate::Error::write_application_error_to_out_protocol
    - '&mut dyn TOutputProtocol::flush'
    - '&mut dyn TOutputProtocol::write_message_end'
    - Ok
    - '&mut dyn TOutputProtocol::write_message_begin'
    - TMessageIdentifier::new
    - ApplicationError::new
    linkageType: ''
    returnType: crate::Result
    signature: 'pub fn handle_process_result(msg_ident: &TMessageIdentifier,res: crate::Result<()>,o_prot:
      &mut dyn TOutputProtocol,) -> crate::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:159,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:160,1
    - Dst: RollingStock::Flexity
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:160,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:161,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:162,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:164,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:165,1
    - Dst: handle_add_streetcar
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:171,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:173,1
    - Dst: expect
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 179
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 179
    functionName: tests::handle_add_streetcar_compiles_and_returns_expected_value
    functionSourceFile: /src/thrift/lib/rs/test_recursive/src/lib.rs
    functionUses: 0
    functionsReached:
    - expect
    - Some
    - RollingStock::Flexity
    - handle_add_streetcar
    linkageType: ''
    returnType: void
    signature: fn handle_add_streetcar_compiles_and_returns_expected_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:184,1
    - Dst: RollingStock::Clrv
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:184,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:185,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:186,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:188,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:189,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:190,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:191,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:196,1
    - Dst: RollingStock::Flexity
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:196,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:197,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:198,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:200,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:201,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:202,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:203,1
    - Dst: handle_upgrade_streetcar
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:208,1
    - Dst: expect
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 213
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 213
    functionName: tests::handle_upgrade_streetcar_compiles_and_returns_expected_value
    functionSourceFile: /src/thrift/lib/rs/test_recursive/src/lib.rs
    functionUses: 0
    functionsReached:
    - Some
    - RollingStock::Flexity
    - RollingStock::Clrv
    - handle_upgrade_streetcar
    - expect
    linkageType: ''
    returnType: void
    signature: fn handle_upgrade_streetcar_compiles_and_returns_expected_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FlatcarConsist::Lrt
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:217,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:218,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:219,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:222,1
    - Dst: clone
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:222,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:223,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:223,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:224,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:224,1
    - Dst: handle_build_transporter
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:228,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:229,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:229,1
    - Dst: expect
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 233
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 233
    functionName: tests::handle_build_transporter_compiles_and_returns_expected_value
    functionSourceFile: /src/thrift/lib/rs/test_recursive/src/lib.rs
    functionUses: 0
    functionsReached:
    - handle_build_transporter
    - clone
    - Some
    - FlatcarConsist::Lrt
    - expect
    - '&str::to_owned'
    linkageType: ''
    returnType: void
    signature: fn handle_build_transporter_compiles_and_returns_expected_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:238,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:239,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:239,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:240,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:240,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:243,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:244,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:245,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:249,1
    - Dst: clone
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:250,1
    - Dst: handle_upgrade_bus
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:254,1
    - Dst: expect
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 259
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 259
    functionName: tests::handle_upgrade_bus_compiles_and_returns_expected_value
    functionSourceFile: /src/thrift/lib/rs/test_recursive/src/lib.rs
    functionUses: 0
    functionsReached:
    - clone
    - Some
    - handle_upgrade_bus
    - expect
    - '&str::to_owned'
    linkageType: ''
    returnType: void
    signature: fn handle_upgrade_bus_compiles_and_returns_expected_value()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:265,1
    - Dst: '&str::to_owned'
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:265,1
    - Dst: Some
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:266,1
    - Dst: clone
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:266,1
    - Dst: handle_improvements_for_route
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:270,1
    - Dst: expect
      Src: /src/thrift/lib/rs/test_recursive/src/lib.rs:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 275
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 275
    functionName: tests::handle_improvements_for_route_compiles_and_returns_expected_value
    functionSourceFile: /src/thrift/lib/rs/test_recursive/src/lib.rs
    functionUses: 0
    functionsReached:
    - clone
    - Some
    - handle_improvements_for_route
    - expect
    - '&str::to_owned'
    linkageType: ''
    returnType: void
    signature: fn handle_improvements_for_route_compiles_and_returns_expected_value()
Fuzzer filename: /src/thrift/lib/rs/test/fuzz/fuzz_targets/structured_roundtrip_compact.rs
Fuzzing method: fuzz_target
report: name
sources:
- function_names: []
  source_file: /src/thrift/test/rs/src/lib.rs
- function_names:
  - main
  - run
  - ThriftTestSyncHandlerImpl::handle_test_void
  - ThriftTestSyncHandlerImpl::handle_test_string
  - ThriftTestSyncHandlerImpl::handle_test_uuid
  - ThriftTestSyncHandlerImpl::handle_test_bool
  - ThriftTestSyncHandlerImpl::handle_test_byte
  - ThriftTestSyncHandlerImpl::handle_test_i32
  - ThriftTestSyncHandlerImpl::handle_test_i64
  - ThriftTestSyncHandlerImpl::handle_test_double
  - ThriftTestSyncHandlerImpl::handle_test_binary
  - ThriftTestSyncHandlerImpl::handle_test_struct
  - ThriftTestSyncHandlerImpl::handle_test_nest
  - ThriftTestSyncHandlerImpl::handle_test_map
  - ThriftTestSyncHandlerImpl::handle_test_string_map
  - ThriftTestSyncHandlerImpl::handle_test_set
  - ThriftTestSyncHandlerImpl::handle_test_list
  - ThriftTestSyncHandlerImpl::handle_test_enum
  - ThriftTestSyncHandlerImpl::handle_test_typedef
  - ThriftTestSyncHandlerImpl::handle_test_map_map
  - ThriftTestSyncHandlerImpl::handle_test_insanity
  - ThriftTestSyncHandlerImpl::handle_test_multi
  - ThriftTestSyncHandlerImpl::handle_test_exception
  - ThriftTestSyncHandlerImpl::handle_test_multi_exception
  - ThriftTestSyncHandlerImpl::handle_test_oneway
  - SecondServiceSyncHandlerImpl::handle_secondtest_string
  source_file: /src/thrift/test/rs/src/bin/test_server.rs
- function_names:
  - main
  - run
  - bind
  - bind_uds
  - build
  - make_thrift_calls
  - verify_expected_result
  source_file: /src/thrift/test/rs/src/bin/test_client.rs
- function_names: []
  source_file: /src/thrift/tutorial/rs/src/lib.rs
- function_names:
  - SharedStruct::new
  - SharedStruct::read_from_in_protocol
  - SharedStruct::write_to_out_protocol
  - SharedServiceSyncClient::new
  - SharedServiceSyncClient::i_prot_mut
  - SharedServiceSyncClient::o_prot_mut
  - SharedServiceSyncClient::sequence_number
  - SharedServiceSyncClient::increment_sequence_number
  - C::get_struct
  - SharedServiceSyncProcessor::new
  - SharedServiceSyncProcessor::process_get_struct
  - TSharedServiceProcessFunctions::process_get_struct
  - SharedServiceSyncProcessor::process
  - SharedServiceGetStructArgs::read_from_in_protocol
  - SharedServiceGetStructArgs::write_to_out_protocol
  - SharedServiceGetStructResult::ok_or
  - SharedServiceGetStructResult::read_from_in_protocol
  - SharedServiceGetStructResult::write_to_out_protocol
  source_file: /src/thrift/tutorial/rs/src/shared.rs
- function_names:
  - Operation::write_to_out_protocol
  - Operation::read_from_in_protocol
  - Operation::from
  - Operation::from
  - i32::from
  - i32::from
  - Work::new
  - Work::read_from_in_protocol
  - Work::write_to_out_protocol
  - InvalidOperation::new
  - InvalidOperation::read_from_in_protocol
  - InvalidOperation::write_to_out_protocol
  - thrift::Error::from
  - InvalidOperation::fmt
  - ConstMAPCONSTANT::const_value
  - CalculatorSyncClient::new
  - CalculatorSyncClient::i_prot_mut
  - CalculatorSyncClient::o_prot_mut
  - CalculatorSyncClient::sequence_number
  - CalculatorSyncClient::increment_sequence_number
  - C::ping
  - C::add
  - C::calculate
  - C::zip
  - CalculatorSyncProcessor::new
  - CalculatorSyncProcessor::process_ping
  - CalculatorSyncProcessor::process_add
  - CalculatorSyncProcessor::process_calculate
  - CalculatorSyncProcessor::process_zip
  - CalculatorSyncProcessor::process_get_struct
  - TCalculatorProcessFunctions::process_ping
  - TCalculatorProcessFunctions::process_add
  - TCalculatorProcessFunctions::process_calculate
  - TCalculatorProcessFunctions::process_zip
  - CalculatorSyncProcessor::process
  - CalculatorPingArgs::read_from_in_protocol
  - CalculatorPingArgs::write_to_out_protocol
  - CalculatorPingResult::ok_or
  - CalculatorPingResult::read_from_in_protocol
  - CalculatorPingResult::write_to_out_protocol
  - CalculatorAddArgs::read_from_in_protocol
  - CalculatorAddArgs::write_to_out_protocol
  - CalculatorAddResult::ok_or
  - CalculatorAddResult::read_from_in_protocol
  - CalculatorAddResult::write_to_out_protocol
  - CalculatorCalculateArgs::read_from_in_protocol
  - CalculatorCalculateArgs::write_to_out_protocol
  - CalculatorCalculateResult::ok_or
  - CalculatorCalculateResult::read_from_in_protocol
  - CalculatorCalculateResult::write_to_out_protocol
  - CalculatorZipArgs::read_from_in_protocol
  - CalculatorZipArgs::write_to_out_protocol
  source_file: /src/thrift/tutorial/rs/src/tutorial.rs
- function_names:
  - main
  - run
  - new_client
  source_file: /src/thrift/tutorial/rs/src/bin/tutorial_client.rs
- function_names:
  - main
  - run
  - CalculatorServer::default
  - CalculatorServer::handle_get_struct
  - CalculatorServer::handle_ping
  - CalculatorServer::handle_add
  - CalculatorServer::handle_calculate
  - CalculatorServer::handle_zip
  source_file: /src/thrift/tutorial/rs/src/bin/tutorial_server.rs
- function_names:
  - tests::must_be_able_to_use_constructor
  - tests::must_be_able_to_use_constructor_with_no_fields
  - tests::must_be_able_to_use_constructor_without_option_wrap
  - tests::must_be_able_to_use_defaults
  - tests::unknown_union_variant_in_struct_field_is_treated_as_none
  - tests::union_with_known_and_unknown_fields_deserializes_to_known_variant
  - tests::nested_union_unknown_variant_does_not_corrupt_stream
  source_file: /src/thrift/lib/rs/test/src/lib.rs
- function_names:
  - main
  - run
  - run_meal_server
  - run_full_meal_server
  - PartHandler::handle_meal
  - PartHandler::handle_ramen
  - PartHandler::handle_napkin
  - FullHandler::handle_full_meal_and_drinks
  - FullHandler::handle_best_pie
  - FullHandler::handle_full_meal
  - FullHandler::handle_meal
  - FullHandler::handle_ramen
  - FullHandler::handle_napkin
  - full_meal
  - meal
  - noodle
  - ramen
  - napkin
  - run_recursive_server
  - RecursiveTestServerHandler::handle_echo_tree
  - RecursiveTestServerHandler::handle_echo_list
  - RecursiveTestServerHandler::handle_echo_co_rec
  source_file: /src/thrift/lib/rs/test/src/bin/kitchen_sink_server.rs
- function_names:
  - main
  - run
  - bind
  - bind_uds
  - build
  - run_client
  - exec_meal_client
  - exec_full_meal_client
  - exec_recursive_client
  - execute_call
  source_file: /src/thrift/lib/rs/test/src/bin/kitchen_sink_client.rs
- function_names:
  - serialize_fuzz_test
  - convert_corpus_file
  - generate_random_file
  - main
  source_file: /src/thrift/lib/rs/test/fuzz/bin/corpus_generator.rs
- function_names:
  - run
  - fuzz_target
  source_file: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_binary.rs
- function_names:
  - run
  - fuzz_target
  source_file: /src/thrift/lib/rs/test/fuzz/fuzz_targets/structured_roundtrip_compact.rs
- function_names:
  - run
  - fuzz_target
  source_file: /src/thrift/lib/rs/test/fuzz/fuzz_targets/roundtrip_binary.rs
- function_names:
  - run
  - fuzz_target
  source_file: /src/thrift/lib/rs/test/fuzz/fuzz_targets/roundtrip_compact.rs
- function_names:
  - run
  - fuzz_target
  source_file: /src/thrift/lib/rs/test/fuzz/fuzz_targets/structured_roundtrip_binary.rs
- function_names:
  - run
  - fuzz_target
  source_file: /src/thrift/lib/rs/test/fuzz/fuzz_targets/parse_compact.rs
- function_names: []
  source_file: /src/thrift/lib/rs/test/fuzz/lib/mod.rs
- function_names:
  - TestEnum::write_to_out_protocol
  - TestEnum::read_from_in_protocol
  - TestEnum::from
  - TestEnum::from
  - i32::from
  - i32::from
  - BasicTypes::new
  - BasicTypes::read_from_in_protocol
  - BasicTypes::write_to_out_protocol
  - Requiredness::new
  - Requiredness::read_from_in_protocol
  - Requiredness::write_to_out_protocol
  - FieldIDTest::new
  - FieldIDTest::read_from_in_protocol
  - FieldIDTest::write_to_out_protocol
  - EmptyStruct::new
  - EmptyStruct::read_from_in_protocol
  - EmptyStruct::write_to_out_protocol
  - TestUnion::read_from_in_protocol
  - TestUnion::write_to_out_protocol
  - Containers::new
  - Containers::read_from_in_protocol
  - Containers::write_to_out_protocol
  - RecursiveStruct::new
  - RecursiveStruct::read_from_in_protocol
  - RecursiveStruct::write_to_out_protocol
  - FuzzTest::new
  - FuzzTest::read_from_in_protocol
  - FuzzTest::write_to_out_protocol
  source_file: /src/thrift/lib/rs/test/fuzz/lib/fuzz_test.rs
- function_names:
  - Error::read_application_error_from_in_protocol
  - Error::write_application_error_to_out_protocol
  - Error::fmt
  - Error::fmt
  - Error::from
  - Error::from
  - Error::from
  - Error::from
  - Error::from
  - new_transport_error
  - TransportError::new
  - TransportError::fmt
  - TransportErrorKind::try_from
  - Error::from
  - Error::from
  - Error::from
  - new_protocol_error
  - ProtocolError::new
  - ProtocolError::fmt
  - ProtocolErrorKind::try_from
  - new_application_error
  - ApplicationError::new
  - ApplicationError::fmt
  - ApplicationErrorKind::try_from
  source_file: /src/thrift/lib/rs/src/errors.rs
- function_names:
  - assert_success
  source_file: /src/thrift/lib/rs/src/lib.rs
- function_names: []
  source_file: /src/thrift/lib/rs/src/autogen.rs
- function_names:
  - TConfiguration::no_limits
  - TConfiguration::max_message_size
  - TConfiguration::max_frame_size
  - TConfiguration::max_recursion_depth
  - TConfiguration::max_container_size
  - TConfiguration::max_string_size
  - TConfiguration::builder
  - TConfiguration::default
  - TConfigurationBuilder::max_message_size
  - TConfigurationBuilder::max_frame_size
  - TConfigurationBuilder::max_recursion_depth
  - TConfigurationBuilder::max_container_size
  - TConfigurationBuilder::max_string_size
  - TConfigurationBuilder::build
  - tests::test_custom_configuration_builder
  - tests::test_invalid_configuration
  source_file: /src/thrift/lib/rs/src/configuration.rs
- function_names:
  - TBufferedReadTransport::new
  - TBufferedReadTransport::with_capacity
  - TBufferedReadTransport::get_bytes
  - TBufferedReadTransport::consume
  - TBufferedReadTransport::read
  - TBufferedReadTransportFactory::new
  - TBufferedReadTransportFactory::create
  - TBufferedWriteTransport::new
  - TBufferedWriteTransport::with_capacity
  - TBufferedWriteTransport::write
  - TBufferedWriteTransport::flush
  - TBufferedWriteTransportFactory::new
  - TBufferedWriteTransportFactory::create
  - tests::must_return_zero_if_read_buffer_is_empty
  - tests::must_return_zero_if_caller_reads_into_zero_capacity_buffer
  - tests::must_return_zero_if_nothing_more_can_be_read
  - tests::must_fill_user_buffer_with_only_as_many_bytes_as_available
  - tests::must_read_successfully
  - tests::must_return_error_when_nothing_can_be_written_to_underlying_channel
  - tests::must_return_zero_if_caller_calls_write_with_empty_buffer
  - tests::must_auto_flush_if_write_buffer_full
  - tests::must_write_to_inner_transport_on_flush
  - tests::must_write_successfully_after_flush
  source_file: /src/thrift/lib/rs/src/transport/buffered.rs
- function_names:
  - TTcpChannel::new
  - TTcpChannel::with_stream
  - TTcpChannel::read_timeout
  - TTcpChannel::write_timeout
  - TTcpChannel::set_read_timeout
  - TTcpChannel::set_write_timeout
  - TTcpChannel::set_timeouts
  - TTcpChannel::open
  - TTcpChannel::close
  - TTcpChannel::if_set
  - TTcpChannel::split
  - TTcpChannel::read
  - TTcpChannel::write
  - TTcpChannel::flush
  - UnixStream::split
  - tests::listening_address
  - tests::connected_streams
  - tests::wrapped_channel
  - tests::assert_channel_timeouts
  - tests::assert_stream_timeouts
  - tests::must_store_read_timeout_before_open
  - tests::must_apply_timeouts_when_opening_channel
  - tests::must_enforce_read_timeout_set_before_open
  - tests::must_set_read_timeout_on_wrapped_stream
  - tests::must_set_write_timeout_on_wrapped_stream
  - tests::must_set_both_timeouts_on_wrapped_stream
  - tests::must_clear_timeouts_on_wrapped_stream
  - tests::must_store_timeouts_from_wrapped_stream
  - tests::split_halves_must_not_clobber_each_others_timeout
  source_file: /src/thrift/lib/rs/src/transport/socket.rs
- function_names:
  - TFramedReadTransport::new
  - TFramedReadTransport::with_capacity
  - TFramedReadTransport::read
  - TFramedReadTransportFactory::new
  - TFramedReadTransportFactory::create
  - TFramedWriteTransport::new
  - TFramedWriteTransport::with_capacity
  - TFramedWriteTransport::write
  - TFramedWriteTransport::flush
  - TFramedWriteTransportFactory::new
  - TFramedWriteTransportFactory::create
  - tests::must_read_message_smaller_than_initial_buffer_size
  - tests::must_read_message_greater_than_initial_buffer_size
  - tests::must_read_multiple_messages_in_sequence_correctly
  - tests::must_write_message_smaller_than_buffer_size
  - tests::must_return_zero_if_caller_calls_write_with_empty_buffer
  - tests::must_write_to_inner_transport_on_flush
  - tests::must_write_message_greater_than_buffer_size_00
  - tests::must_write_message_greater_than_buffer_size_01
  - tests::must_return_error_if_nothing_can_be_written_to_inner_transport_on_flush
  - tests::must_write_successfully_after_flush
  source_file: /src/thrift/lib/rs/src/transport/framed.rs
- function_names:
  - assert_eq_transport_num_written_bytes
  - assert_eq_transport_written_bytes
  - Box::create
  - Box::create
  - ReadHalf::new
  - WriteHalf::new
  - ReadHalf::read
  - WriteHalf::write
  - WriteHalf::flush
  - ReadHalf::deref
  - ReadHalf::deref_mut
  - WriteHalf::deref
  - WriteHalf::deref_mut
  - tests::must_create_usable_read_channel_from_concrete_read_type
  - tests::must_create_usable_read_channel_from_boxed_read
  - tests::must_create_usable_write_channel_from_concrete_write_type
  - tests::must_create_usable_write_channel_from_boxed_write
  - tests::must_create_usable_read_transport_from_concrete_read_transport
  - tests::must_create_usable_read_transport_from_boxed_read
  - tests::must_create_usable_write_transport_from_concrete_write_transport
  - tests::must_create_usable_write_transport_from_boxed_write
  - tests::takes_read_transport
  - tests::takes_write_transport
  source_file: /src/thrift/lib/rs/src/transport/mod.rs
- function_names:
  - TBufferChannel::with_capacity
  - TBufferChannel::read_bytes
  - TBufferChannel::empty_read_buffer
  - TBufferChannel::set_readable_bytes
  - TBufferChannel::write_bytes
  - TBufferChannel::empty_write_buffer
  - TBufferChannel::copy_write_buffer_to_read_buffer
  - TBufferChannel::split
  - TBufferChannel::read
  - TBufferChannel::write
  - TBufferChannel::flush
  - tests::must_empty_write_buffer
  - tests::must_accept_writes_after_buffer_emptied
  - tests::must_accept_multiple_writes_until_buffer_is_full
  - tests::must_empty_read_buffer
  - tests::must_allow_readable_bytes_to_be_set_after_read_buffer_emptied
  - tests::must_accept_multiple_reads_until_all_bytes_read
  - tests::must_allow_reads_to_succeed_after_read_buffer_replenished
  source_file: /src/thrift/lib/rs/src/transport/mem.rs
- function_names:
  - TStoredInputProtocol::new
  - TStoredInputProtocol::read_message_begin
  - TStoredInputProtocol::read_message_end
  - TStoredInputProtocol::read_struct_begin
  - TStoredInputProtocol::read_struct_end
  - TStoredInputProtocol::read_field_begin
  - TStoredInputProtocol::read_field_end
  - TStoredInputProtocol::read_bytes
  - TStoredInputProtocol::read_bool
  - TStoredInputProtocol::read_i8
  - TStoredInputProtocol::read_i16
  - TStoredInputProtocol::read_i32
  - TStoredInputProtocol::read_i64
  - TStoredInputProtocol::read_double
  - TStoredInputProtocol::read_uuid
  - TStoredInputProtocol::read_string
  - TStoredInputProtocol::read_list_begin
  - TStoredInputProtocol::read_list_end
  - TStoredInputProtocol::read_set_begin
  - TStoredInputProtocol::read_set_end
  - TStoredInputProtocol::read_map_begin
  - TStoredInputProtocol::read_map_end
  - TStoredInputProtocol::read_byte
  source_file: /src/thrift/lib/rs/src/protocol/stored.rs
- function_names:
  - TMultiplexedOutputProtocol::new
  - TMultiplexedOutputProtocol::write_message_begin
  - TMultiplexedOutputProtocol::write_message_end
  - TMultiplexedOutputProtocol::write_struct_begin
  - TMultiplexedOutputProtocol::write_struct_end
  - TMultiplexedOutputProtocol::write_field_begin
  - TMultiplexedOutputProtocol::write_field_end
  - TMultiplexedOutputProtocol::write_field_stop
  - TMultiplexedOutputProtocol::write_bytes
  - TMultiplexedOutputProtocol::write_bool
  - TMultiplexedOutputProtocol::write_i8
  - TMultiplexedOutputProtocol::write_i16
  - TMultiplexedOutputProtocol::write_i32
  - TMultiplexedOutputProtocol::write_i64
  - TMultiplexedOutputProtocol::write_double
  - TMultiplexedOutputProtocol::write_string
  - TMultiplexedOutputProtocol::write_uuid
  - TMultiplexedOutputProtocol::write_list_begin
  - TMultiplexedOutputProtocol::write_list_end
  - TMultiplexedOutputProtocol::write_set_begin
  - TMultiplexedOutputProtocol::write_set_end
  - TMultiplexedOutputProtocol::write_map_begin
  - TMultiplexedOutputProtocol::write_map_end
  - TMultiplexedOutputProtocol::flush
  - TMultiplexedOutputProtocol::write_byte
  - tests::must_write_message_begin_with_prefixed_service_name
  - tests::test_objects
  source_file: /src/thrift/lib/rs/src/protocol/multiplexed.rs
- function_names:
  - assert_eq_written_bytes
  - copy_write_buffer_to_read_buffer
  - set_readable_bytes
  - TInputProtocol::skip
  - TInputProtocol::skip_till_depth
  - TInputProtocol::min_serialized_size
  - Box::read_message_begin
  - Box::read_message_end
  - Box::read_struct_begin
  - Box::read_struct_end
  - Box::read_field_begin
  - Box::read_field_end
  - Box::read_bool
  - Box::read_bytes
  - Box::read_i8
  - Box::read_i16
  - Box::read_i32
  - Box::read_i64
  - Box::read_double
  - Box::read_uuid
  - Box::read_string
  - Box::read_list_begin
  - Box::read_list_end
  - Box::read_set_begin
  - Box::read_set_end
  - Box::read_map_begin
  - Box::read_map_end
  - Box::read_byte
  - Box::min_serialized_size
  - Box::write_message_begin
  - Box::write_message_end
  - Box::write_struct_begin
  - Box::write_struct_end
  - Box::write_field_begin
  - Box::write_field_end
  - Box::write_field_stop
  - Box::write_bool
  - Box::write_bytes
  - Box::write_i8
  - Box::write_i16
  - Box::write_i32
  - Box::write_i64
  - Box::write_double
  - Box::write_uuid
  - Box::write_string
  - Box::write_list_begin
  - Box::write_list_end
  - Box::write_set_begin
  - Box::write_set_end
  - Box::write_map_begin
  - Box::write_map_end
  - Box::flush
  - Box::write_byte
  - Box::create
  - Box::create
  - TMessageIdentifier::new
  - TStructIdentifier::new
  - TFieldIdentifier::new
  - TListIdentifier::new
  - TSetIdentifier::new
  - TMapIdentifier::new
  - TMessageType::fmt
  - u8::from
  - TMessageType::try_from
  - TType::fmt
  - verify_expected_sequence_number
  - verify_expected_service_call
  - verify_expected_message_type
  - verify_required_field_exists
  - check_container_size
  - field_id
  - tests::must_create_usable_input_protocol_from_concrete_input_protocol
  - tests::must_create_usable_input_protocol_from_boxed_input
  - tests::must_create_usable_output_protocol_from_concrete_output_protocol
  - tests::must_create_usable_output_protocol_from_boxed_output
  - tests::takes_input_protocol
  - tests::takes_output_protocol
  - tests::build_struct_with_unknown_binary_field
  - tests::read_struct_skipping_unknown
  - tests::must_skip_binary_field_with_non_utf8_bytes
  - tests::must_skip_valid_utf8_string_field
  - tests::must_skip_empty_binary_field
  source_file: /src/thrift/lib/rs/src/protocol/mod.rs
- function_names:
  - TCompactInputProtocol::new
  - TCompactInputProtocol::with_config
  - TCompactInputProtocol::read_list_set_begin
  - TCompactInputProtocol::check_recursion_depth
  - TCompactInputProtocol::read_varint32
  - TCompactInputProtocol::read_varint64
  - TCompactInputProtocol::read_message_begin
  - TCompactInputProtocol::read_message_end
  - TCompactInputProtocol::read_struct_begin
  - TCompactInputProtocol::read_struct_end
  - TCompactInputProtocol::read_field_begin
  - TCompactInputProtocol::read_field_end
  - TCompactInputProtocol::read_bool
  - TCompactInputProtocol::read_bytes
  - TCompactInputProtocol::read_i8
  - TCompactInputProtocol::read_i16
  - TCompactInputProtocol::read_i32
  - TCompactInputProtocol::read_i64
  - TCompactInputProtocol::read_double
  - TCompactInputProtocol::read_uuid
  - TCompactInputProtocol::read_string
  - TCompactInputProtocol::read_list_begin
  - TCompactInputProtocol::read_list_end
  - TCompactInputProtocol::read_set_begin
  - TCompactInputProtocol::read_set_end
  - TCompactInputProtocol::read_map_begin
  - TCompactInputProtocol::read_map_end
  - TCompactInputProtocol::read_byte
  - TCompactInputProtocol::min_serialized_size
  - compact_protocol_min_serialized_size
  - zigzag_to_i32
  - zigzag_to_i64
  - TCompactInputProtocol::seek
  - TCompactInputProtocolFactory::new
  - TCompactInputProtocolFactory::create
  - TCompactOutputProtocol::new
  - TCompactOutputProtocol::write_field_header
  - TCompactOutputProtocol::write_list_set_begin
  - TCompactOutputProtocol::assert_no_pending_bool_write
  - TCompactOutputProtocol::write_message_begin
  - TCompactOutputProtocol::write_message_end
  - TCompactOutputProtocol::write_struct_begin
  - TCompactOutputProtocol::write_struct_end
  - TCompactOutputProtocol::write_field_begin
  - TCompactOutputProtocol::write_field_end
  - TCompactOutputProtocol::write_field_stop
  - TCompactOutputProtocol::write_bool
  - TCompactOutputProtocol::write_bytes
  - TCompactOutputProtocol::write_i8
  - TCompactOutputProtocol::write_i16
  - TCompactOutputProtocol::write_i32
  - TCompactOutputProtocol::write_i64
  - TCompactOutputProtocol::write_double
  - TCompactOutputProtocol::write_uuid
  - TCompactOutputProtocol::write_string
  - TCompactOutputProtocol::write_list_begin
  - TCompactOutputProtocol::write_list_end
  - TCompactOutputProtocol::write_set_begin
  - TCompactOutputProtocol::write_set_end
  - TCompactOutputProtocol::write_map_begin
  - TCompactOutputProtocol::write_map_end
  - TCompactOutputProtocol::flush
  - TCompactOutputProtocol::write_byte
  - TCompactOutputProtocolFactory::new
  - TCompactOutputProtocolFactory::create
  - collection_type_to_u8
  - type_to_u8
  - collection_u8_to_type
  - u8_to_type
  - tests::must_write_message_begin_largest_maximum_positive_sequence_number
  - tests::must_read_message_begin_largest_maximum_positive_sequence_number
  - tests::must_write_message_begin_positive_sequence_number_0
  - tests::must_read_message_begin_positive_sequence_number_0
  - tests::must_write_message_begin_positive_sequence_number_1
  - tests::must_read_message_begin_positive_sequence_number_1
  - tests::must_write_message_begin_zero_sequence_number
  - tests::must_read_message_begin_zero_sequence_number
  - tests::must_write_message_begin_largest_minimum_negative_sequence_number
  - tests::must_read_message_begin_largest_minimum_negative_sequence_number
  - tests::must_write_message_begin_negative_sequence_number_0
  - tests::must_read_message_begin_negative_sequence_number_0
  - tests::must_write_message_begin_negative_sequence_number_1
  - tests::must_read_message_begin_negative_sequence_number_1
  - tests::must_write_message_begin_negative_sequence_number_2
  - tests::must_read_message_begin_negative_sequence_number_2
  - tests::must_round_trip_upto_i64_maxvalue
  - tests::must_round_trip_message_begin
  - tests::must_write_message_end
  - tests::must_write_struct_with_delta_fields
  - tests::must_round_trip_struct_with_delta_fields
  - tests::must_write_struct_with_non_zero_initial_field_and_delta_fields
  - tests::must_round_trip_struct_with_non_zero_initial_field_and_delta_fields
  - tests::must_write_struct_with_long_fields
  - tests::must_round_trip_struct_with_long_fields
  - tests::must_write_struct_with_mix_of_long_and_delta_fields
  - tests::must_round_trip_struct_with_mix_of_long_and_delta_fields
  - tests::must_write_nested_structs_0
  - tests::must_round_trip_nested_structs_0
  - tests::must_write_nested_structs_1
  - tests::must_round_trip_nested_structs_1
  - tests::must_write_nested_structs_2
  - tests::must_round_trip_nested_structs_2
  - tests::must_write_nested_structs_3
  - tests::must_round_trip_nested_structs_3
  - tests::must_write_bool_field
  - tests::must_round_trip_bool_field
  - tests::must_fail_if_write_field_end_without_writing_bool_value
  - tests::must_fail_if_write_stop_field_without_writing_bool_value
  - tests::must_fail_if_write_struct_end_without_writing_bool_value
  - tests::must_fail_if_write_struct_end_without_any_fields
  - tests::must_write_field_end
  - tests::must_write_small_sized_list_begin
  - tests::must_round_trip_small_sized_list_begin
  - tests::must_write_large_sized_list_begin
  - tests::must_round_trip_large_sized_list_begin
  - tests::must_write_list_end
  - tests::must_write_small_sized_set_begin
  - tests::must_round_trip_small_sized_set_begin
  - tests::must_write_large_sized_set_begin
  - tests::must_round_trip_large_sized_set_begin
  - tests::must_write_set_end
  - tests::must_write_zero_sized_map_begin
  - tests::must_read_zero_sized_map_begin
  - tests::must_write_map_begin
  - tests::must_round_trip_map_begin
  - tests::must_write_map_end
  - tests::must_write_map_with_bool_key_and_value
  - tests::must_round_trip_map_with_bool_value
  - tests::must_read_map_end
  - tests::must_reject_overlong_varint_i64
  - tests::must_accept_valid_10_byte_varint_i64
  - tests::test_objects
  - tests::test_objects_no_limits
  - tests::must_read_write_double
  - tests::must_encode_double_as_other_langs
  - tests::assert_no_write
  - tests::must_read_boolean_list
  - tests::must_read_boolean_list_alternative_encoding
  - tests::must_enforce_recursion_depth_limit
  - tests::must_check_container_size_overflow
  - tests::must_reject_negative_container_sizes
  - tests::must_enforce_container_size_limit
  - tests::must_handle_varint_size_overflow
  - tests::must_enforce_string_size_limit
  - tests::must_allow_no_limit_configuration
  - tests::must_allow_containers_within_limit
  - tests::must_allow_strings_within_limit
  source_file: /src/thrift/lib/rs/src/protocol/compact.rs
- function_names:
  - TBinaryInputProtocol::new
  - TBinaryInputProtocol::with_config
  - TBinaryInputProtocol::check_recursion_depth
  - TBinaryInputProtocol::read_message_begin
  - TBinaryInputProtocol::read_message_end
  - TBinaryInputProtocol::read_struct_begin
  - TBinaryInputProtocol::read_struct_end
  - TBinaryInputProtocol::read_field_begin
  - TBinaryInputProtocol::read_field_end
  - TBinaryInputProtocol::read_bytes
  - TBinaryInputProtocol::read_bool
  - TBinaryInputProtocol::read_i8
  - TBinaryInputProtocol::read_i16
  - TBinaryInputProtocol::read_i32
  - TBinaryInputProtocol::read_i64
  - TBinaryInputProtocol::read_double
  - TBinaryInputProtocol::read_uuid
  - TBinaryInputProtocol::read_string
  - TBinaryInputProtocol::read_list_begin
  - TBinaryInputProtocol::read_list_end
  - TBinaryInputProtocol::read_set_begin
  - TBinaryInputProtocol::read_set_end
  - TBinaryInputProtocol::read_map_begin
  - TBinaryInputProtocol::read_map_end
  - TBinaryInputProtocol::read_byte
  - TBinaryInputProtocol::min_serialized_size
  - TBinaryInputProtocolFactory::new
  - TBinaryInputProtocolFactory::create
  - TBinaryOutputProtocol::new
  - TBinaryOutputProtocol::write_message_begin
  - TBinaryOutputProtocol::write_message_end
  - TBinaryOutputProtocol::write_struct_begin
  - TBinaryOutputProtocol::write_struct_end
  - TBinaryOutputProtocol::write_field_begin
  - TBinaryOutputProtocol::write_field_end
  - TBinaryOutputProtocol::write_field_stop
  - TBinaryOutputProtocol::write_bytes
  - TBinaryOutputProtocol::write_bool
  - TBinaryOutputProtocol::write_i8
  - TBinaryOutputProtocol::write_i16
  - TBinaryOutputProtocol::write_i32
  - TBinaryOutputProtocol::write_i64
  - TBinaryOutputProtocol::write_double
  - TBinaryOutputProtocol::write_string
  - TBinaryOutputProtocol::write_uuid
  - TBinaryOutputProtocol::write_list_begin
  - TBinaryOutputProtocol::write_list_end
  - TBinaryOutputProtocol::write_set_begin
  - TBinaryOutputProtocol::write_set_end
  - TBinaryOutputProtocol::write_map_begin
  - TBinaryOutputProtocol::write_map_end
  - TBinaryOutputProtocol::flush
  - TBinaryOutputProtocol::write_byte
  - TBinaryOutputProtocolFactory::new
  - TBinaryOutputProtocolFactory::create
  - field_type_to_u8
  - field_type_from_u8
  - tests::must_write_strict_message_call_begin
  - tests::must_write_non_strict_message_call_begin
  - tests::must_write_strict_message_reply_begin
  - tests::must_write_non_strict_message_reply_begin
  - tests::must_round_trip_strict_message_begin
  - tests::must_round_trip_non_strict_message_begin
  - tests::must_write_message_end
  - tests::must_write_struct_begin
  - tests::must_write_struct_end
  - tests::must_write_field_begin
  - tests::must_round_trip_field_begin
  - tests::must_write_stop_field
  - tests::must_round_trip_field_stop
  - tests::must_write_field_end
  - tests::must_write_list_begin
  - tests::must_round_trip_list_begin
  - tests::must_write_list_end
  - tests::must_write_set_begin
  - tests::must_round_trip_set_begin
  - tests::must_write_set_end
  - tests::must_write_map_begin
  - tests::must_round_trip_map_begin
  - tests::must_write_map_end
  - tests::must_write_bool_true
  - tests::must_write_bool_false
  - tests::must_read_bool_true
  - tests::must_read_bool_false
  - tests::must_allow_any_non_zero_value_to_be_interpreted_as_bool_true
  - tests::must_write_bytes
  - tests::must_write_uuid
  - tests::must_round_trip_uuid
  - tests::must_round_trip_bytes
  - tests::test_objects
  - tests::assert_no_write
  - tests::must_enforce_recursion_depth_limit
  - tests::must_reject_negative_container_sizes
  - tests::must_enforce_container_size_limit
  - tests::must_allow_containers_within_limit
  - tests::must_enforce_string_size_limit
  - tests::must_allow_strings_within_limit
  source_file: /src/thrift/lib/rs/src/protocol/binary.rs
- function_names:
  - TServer::new
  - TServer::listen
  - TServer::listen_uds
  - TServer::handle_stream
  - TServer::new_protocols_for_connection
  - handle_incoming_connection
  source_file: /src/thrift/lib/rs/src/server/threaded.rs
- function_names:
  - TMultiplexedProcessor::new
  - TMultiplexedProcessor::register
  - TMultiplexedProcessor::process_message
  - TMultiplexedProcessor::process
  - TMultiplexedProcessor::fmt
  - split_ident_name
  - missing_processor_message
  - tests::should_split_name_into_proper_separator_and_service_call
  - tests::should_return_full_ident_if_no_separator_exists
  - tests::should_write_error_if_no_separator_found_and_no_default_processor_exists
  - tests::should_write_error_if_separator_exists_and_no_processor_found
  - tests::should_route_call_to_correct_processor
  - tests::should_route_call_to_correct_processor_if_no_separator_exists_and_default_processor_set
  - tests::build_objects
  source_file: /src/thrift/lib/rs/src/server/multiplexed.rs
- function_names:
  - handle_process_result
  source_file: /src/thrift/lib/rs/src/server/mod.rs
- function_names:
  - tests::handle_add_streetcar_compiles_and_returns_expected_value
  - tests::handle_upgrade_streetcar_compiles_and_returns_expected_value
  - tests::handle_build_transporter_compiles_and_returns_expected_value
  - tests::handle_upgrade_bus_compiles_and_returns_expected_value
  - tests::handle_improvements_for_route_compiles_and_returns_expected_value
  source_file: /src/thrift/lib/rs/test_recursive/src/lib.rs
- function_names: []
  source_file: /src/thrift/lib/rs/test_recursive/src/transit/mod.rs
- function_names: []
  source_file: /src/thrift/lib/rs/test_recursive/src/transit/services/mod.rs
- function_names: []
  source_file: /src/thrift/lib/rs/test_recursive/src/transit/light/mod.rs
- function_names: []
  source_file: /src/thrift/lib/rs/test_recursive/src/maintenance/mod.rs
