All functions:
  Elements:
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 2
    argNames:
    - _tag
    - _len
    argTypes:
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: NullChunks::parse_tag
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: 'fn parse_tag(_tag: [u8; 4], _len: u32) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::map
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - len
    - byte_order
    argTypes:
    - Option<u32>
    - ByteOrder
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 9
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: ChunksReader::new
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - u16::map
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(len: Option<u32>, byte_order: ByteOrder) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:71,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:77,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:85,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:90,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:93,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:94,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:103,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:108,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:113,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:113,1
    - Dst: T::parse_tag
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:115,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:116,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:116,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:125,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:125,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 78
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 129
      start: 65
    functionDepth: 14
    functionLinenumber: 65
    functionLinenumberEnd: 129
    functionName: ChunksReader::next
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - Result::read_u32
    - T::parse_tag
    - u64::from
    - saturating_add
    - Result::read_u8
    - Result::read_quad_bytes
    - Some
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_be_u32
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'pub fn next<B: ReadBytes>(&mut self, reader: &mut B) -> Result<Option<T>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:135,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:141,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:145,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 146
      start: 130
    functionDepth: 13
    functionLinenumber: 130
    functionLinenumberEnd: 146
    functionName: ChunksReader::finish
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Result::read_u8
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'pub fn finish<B: ReadBytes>(&mut self, reader: &mut B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:156,1
    - Dst: Self::parse
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:157,1
    - Dst: Result::is_ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:160,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:161,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:162,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:163,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:163,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - reader
    - tag
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 168
      start: 155
    functionDepth: 13
    functionLinenumber: 155
    functionLinenumberEnd: 168
    functionName: ParseChunk::parse_and_skip_unread
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - Result::pos
    - Result::is_ok
    - Self::parse
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn parse_and_skip_unread<B: ReadBytes>(reader: &mut B, tag: [u8; 4],
      len: u32) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - tag
    - len
    argTypes:
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: ChunkParser::new
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(tag: [u8; 4], len: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: P::parse
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: ChunkParser::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 1
    functionsReached:
    - P::parse
    linkageType: ''
    returnType: Result
    signature: 'pub fn parse<B: ReadBytes>(&self, reader: &mut B) -> Result<P>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: P::parse_and_skip_unread
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 14
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: ChunkParser::parse_and_skip_unread
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - P::parse_and_skip_unread
    linkageType: ''
    returnType: Result
    signature: 'pub fn parse_and_skip_unread<B: ReadBytes>(&self, reader: &mut B)
      -> Result<P>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:214,1
    - Dst: PacketInfo::without_blocks
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:216,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 10
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: FormatPcm::make_packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - PacketInfo::without_blocks
    - count
    - u32::from
    linkageType: ''
    returnType: Result
    signature: pub fn make_packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:232,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:239,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:242,1
    - Dst: PacketInfo::with_blocks
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:243,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:248,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:251,1
    - Dst: PacketInfo::with_blocks
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:252,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 256
      start: 231
    functionDepth: 10
    functionLinenumber: 231
    functionLinenumberEnd: 256
    functionName: FormatAdpcm::make_packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - PacketInfo::with_blocks
    - symphonia_core::errors::decode_error
    - count
    linkageType: ''
    returnType: Result
    signature: pub fn make_packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:268,1
    - Dst: PacketInfo::without_blocks
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 276
      start: 267
    functionDepth: 10
    functionLinenumber: 267
    functionLinenumberEnd: 276
    functionName: FormatIeeeFloat::make_packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - PacketInfo::without_blocks
    - count
    linkageType: ''
    returnType: Result
    signature: pub fn make_packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:296,1
    - Dst: PacketInfo::without_blocks
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:298,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 299
      start: 294
    functionDepth: 10
    functionLinenumber: 294
    functionLinenumberEnd: 299
    functionName: FormatExtensible::make_packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - PacketInfo::without_blocks
    - count
    - u32::from
    linkageType: ''
    returnType: Result
    signature: pub fn make_packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:311,1
    - Dst: PacketInfo::without_blocks
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 313
      start: 310
    functionDepth: 10
    functionLinenumber: 310
    functionLinenumberEnd: 313
    functionName: FormatALaw::make_packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - PacketInfo::without_blocks
    - count
    linkageType: ''
    returnType: Result
    signature: pub fn make_packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:325,1
    - Dst: PacketInfo::without_blocks
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 327
      start: 324
    functionDepth: 10
    functionLinenumber: 324
    functionLinenumberEnd: 327
    functionName: FormatMuLaw::make_packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - PacketInfo::without_blocks
    - count
    linkageType: ''
    returnType: Result
    signature: pub fn make_packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:340,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:342,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:346,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:346,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:348,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:352,1
    - Dst: '&mut Self::max'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:353,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:353,1
    - Dst: '&mut Self::get'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:353,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:356,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:360,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:362,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:365,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - block_size
    - frames_per_block
    argTypes:
    - u16
    - u64
    constantsTouched: []
    func_position:
      end: 366
      start: 338
    functionDepth: 10
    functionLinenumber: 338
    functionLinenumberEnd: 366
    functionName: PacketInfo::with_blocks
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 1
    functionsReached:
    - u64::from
    - get
    - NonZero::new
    - '&mut Self::get'
    - '&mut Self::max'
    - checked_mul
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn with_blocks(block_size: u16, frames_per_block: u64) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:370,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:370,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:372,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:375,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:377,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - frame_len
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 381
      start: 368
    functionDepth: 10
    functionLinenumber: 368
    functionLinenumberEnd: 381
    functionName: PacketInfo::without_blocks
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 5
    functionsReached:
    - Self::expect
    - u64::from
    - NonZero::new
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn without_blocks(frame_len: u32) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data_pos
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 385
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionName: PacketInfo::get_num_frames_at
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: u64
    signature: 'pub fn get_num_frames_at(&self, data_pos: u64) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:388,1
    - Dst: Timestamp::align_towards_zero
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:389,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:389,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Timestamp
    constantsTouched: []
    func_position:
      end: 391
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 391
    functionName: PacketInfo::get_actual_ts
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 0
    functionsReached:
    - get
    - Option::expect
    - Timestamp::align_towards_zero
    - Duration::from
    linkageType: ''
    returnType: Timestamp
    signature: 'pub fn get_actual_ts(&self, ts: Timestamp) -> Timestamp'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:401,1
    - Dst: '&[Track]::is_empty'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:402,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:403,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:411,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:414,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:414,1
    - Dst: Result::get_num_frames_at
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:418,1
    - Dst: u64::try_into
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:418,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:420,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:423,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:423,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:424,1
    - Dst: Result::read_boxed_slice
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:427,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:429,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:429,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:429,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 50
    argCount: 5
    argNames:
    - reader
    - packet_info
    - tracks
    - data_start_pos
    - data_end_pos
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - '&PacketInfo'
    - '&[Track]'
    - u64
    - u64
    constantsTouched: []
    func_position:
      end: 430
      start: 394
    functionDepth: 15
    functionLinenumber: 394
    functionLinenumberEnd: 430
    functionName: next_packet
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 9
    functionsReached:
    - get
    - Result::pos
    - Result::read_boxed_slice
    - u64::try_into
    - Some
    - min
    - Packet::new
    - Ok
    - '&[Track]::is_empty'
    - symphonia_core::errors::decode_error
    - Result::get_num_frames_at
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'pub fn next_packet(reader: &mut MediaSourceStream<''_>,packet_info:
      &PacketInfo,tracks: &[Track],data_start_pos: u64,data_end_pos: u64,) -> Result<Option<Packet>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::with_sample_rate
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:439,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:443,1
    - Dst: '&mut Self::with_bits_per_coded_sample'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:443,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:445,1
    - Dst: '&mut Self::with_bits_per_sample'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:443,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:446,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:443,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:450,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:450,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:453,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:453,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:456,1
    - Dst: '&mut Self::with_bits_per_coded_sample'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:456,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:458,1
    - Dst: '&mut Self::with_bits_per_sample'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:456,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:459,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:456,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:463,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:463,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:466,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:466,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 63
    argCount: 3
    argNames:
    - codec_params
    - format_data
    - sample_rate
    argTypes:
    - '&mut AudioCodecParameters'
    - FormatData
    - u32
    constantsTouched: []
    func_position:
      end: 469
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 469
    functionName: append_format_params
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 2
    functionsReached:
    - '&mut Self::with_bits_per_sample'
    - Result::with_sample_rate
    - '&mut Self::with_bits_per_coded_sample'
    - '&mut Self::with_channels'
    - Result::for_codec
    - u32::from
    linkageType: ''
    returnType: void
    signature: 'pub fn append_format_params(codec_params: &mut AudioCodecParameters,format_data:
      FormatData,sample_rate: u32,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::get_num_frames_at
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:475,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:476,1
    - Dst: Result::with_duration
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:478,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-riff/src/common.rs:478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 3
    argNames:
    - track
    - data_len
    - packet_info
    argTypes:
    - '&mut Track'
    - u64
    - '&PacketInfo'
    constantsTouched: []
    func_position:
      end: 479
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 479
    functionName: append_data_params
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/common.rs
    functionUses: 2
    functionsReached:
    - Result::with_num_frames
    - Result::with_duration
    - Result::get_num_frames_at
    - Duration::from
    linkageType: ''
    returnType: void
    signature: 'pub fn append_data_params(track: &mut Track, data_len: u64, packet_info:
      &PacketInfo)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:67,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:70,1
    - Dst: Option::read_u32
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:74,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:77,1
    - Dst: Option::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:81,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:86,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:91,1
    - Dst: ChunksReader::<RiffWaveChunks>::new
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:94,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:96,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:97,1
    - Dst: Self::next
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:102,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:108,1
    - Dst: Result::parse
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:113,1
    - Dst: bool::packet_info
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:117,1
    - Dst: Result::with_max_frames_per_packet
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:118,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:119,1
    - Dst: '&mut Self::with_frames_per_block'
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:118,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:120,1
    - Dst: common::append_format_params
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:123,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:125,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:128,1
    - Dst: parse
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:128,1
    - Dst: parse
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:131,1
    - Dst: Metadata::push
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:136,1
    - Dst: read_info_chunk
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:136,1
    - Dst: Result::skip
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:137,1
    - Dst: parse
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:141,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:144,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:145,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:145,1
    - Dst: Track::new
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:148,1
    - Dst: Result::with_codec_params
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:150,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:150,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:154,1
    - Dst: append_fact_params
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:159,1
    - Dst: common::append_data_params
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:164,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:164,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:168,1
    - Dst: MediaInfo::from_track
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:170,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:173,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 143
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 181
      start: 62
    functionDepth: 13
    functionLinenumber: 62
    functionLinenumberEnd: 181
    functionName: WavReader::try_new
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 1
    functionsReached:
    - get
    - symphonia_core::errors::unsupported_error
    - parse
    - CodecParameters::Audio
    - Option::read_u32
    - Track::new
    - Option::read_quad_bytes
    - Ok
    - symphonia_core::errors::decode_error
    - read_info_chunk
    - ChunksReader::<RiffWaveChunks>::new
    - unwrap_or_default
    - Metadata::push
    - map
    - common::append_data_params
    - AudioCodecParameters::new
    - Result::parse
    - Option::pos
    - Result::with_codec_params
    - append_fact_params
    - MediaInfo::from_track
    - '&mut Self::with_frames_per_block'
    - u64::from
    - Some
    - Result::skip
    - Result::with_max_frames_per_packet
    - Default::default
    - bool::packet_info
    - common::append_format_params
    - Self::next
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:188,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:189,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:190,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:193,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:196,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:196,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 197
      start: 185
    functionDepth: 13
    functionLinenumber: 185
    functionLinenumberEnd: 197
    functionName: WavReader::score
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached:
    - Score::Supported
    - Ok
    - ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
    - ScopedStream<&mut MediaSourceStream<'_>>::read_quad_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn score(mut src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:205,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:205,1
    - Dst: WavReader::try_new
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 206
      start: 201
    functionDepth: 10
    functionLinenumber: 201
    functionLinenumberEnd: 206
    functionName: WavReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - WavReader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 218
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 218
    functionName: WavReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: WavReader::format_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: WavReader::media_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: common::next_packet
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:231,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 238
      start: 230
    functionDepth: 16
    functionLinenumber: 230
    functionLinenumberEnd: 238
    functionName: WavReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached:
    - common::next_packet
    - unwrap_or
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: WavReader::metadata
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 246
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionName: WavReader::chapters
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 250
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionName: WavReader::tracks
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:253,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:254,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:265,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:265,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:268,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:268,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:268,1
    - Dst: is_negative
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:273,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:274,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:280,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:281,1
    - Dst: get_actual_ts
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:293,1
    - Dst: Timestamp::get
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:297,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:297,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:301,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:302,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:302,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:307,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:309,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:312,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/mod.rs:322,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 86
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 323
      start: 252
    functionDepth: 11
    functionLinenumber: 252
    functionLinenumberEnd: 323
    functionName: WavReader::seek
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached:
    - Timestamp::get
    - Ok
    - calc_timestamp
    - get
    - pos
    - is_seekable
    - Error::SeekError
    - SeekFrom::Start
    - symphonia_core::errors::seek_error
    - seek
    - get_actual_ts
    - is_negative
    - ignore_bytes
    - is_empty
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 330
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 330
    functionName: WavReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:68,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:73,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:74,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:76,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:92,1
    - Dst: map_wave_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:106,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:108,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:108,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 5
    argNames:
    - reader
    - block_align
    - bits_per_sample
    - num_channels
    - len
    argTypes:
    - '&mut B'
    - u16
    - u16
    - u16
    - u32
    constantsTouched: []
    func_position:
      end: 114
      start: 52
    functionDepth: 14
    functionLinenumber: 52
    functionLinenumberEnd: 114
    functionName: WaveFormatChunk::read_pcm_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Result::read_be_u16
    - Result::read_u16
    - FormatData::Pcm
    - Ok
    - symphonia_core::errors::decode_error
    - map_wave_channel_count
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn read_pcm_fmt<B: ReadBytes>(reader: &mut B,block_align: u16,bits_per_sample:
      u16,num_channels: u16,len: u32,) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:125,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:130,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:133,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:137,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:140,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:144,1
    - Dst: map_wave_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:146,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:147,1
    - Dst: FormatData::Adpcm
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:147,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 6
    argNames:
    - reader
    - block_align
    - bits_per_sample
    - num_channels
    - len
    - codec
    argTypes:
    - '&mut B'
    - u16
    - u16
    - u16
    - u32
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 148
      start: 116
    functionDepth: 14
    functionLinenumber: 116
    functionLinenumberEnd: 148
    functionName: WaveFormatChunk::read_adpcm_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Result::read_u16
    - FormatData::Adpcm
    - Ok
    - symphonia_core::errors::decode_error
    - map_wave_channel_count
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn read_adpcm_fmt<B: ReadBytes>(reader: &mut B,block_align: u16,bits_per_sample:
      u16,num_channels: u16,len: u32,codec: AudioCodecId,) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:161,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:163,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:170,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:172,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:182,1
    - Dst: map_wave_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:185,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:187,1
    - Dst: FormatData::IeeeFloat
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:187,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - reader
    - bits_per_sample
    - num_channels
    - len
    argTypes:
    - '&mut B'
    - u16
    - u16
    - u32
    constantsTouched: []
    func_position:
      end: 188
      start: 150
    functionDepth: 14
    functionLinenumber: 150
    functionLinenumberEnd: 188
    functionName: WaveFormatChunk::read_ieee_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Result::read_u16
    - FormatData::IeeeFloat
    - Ok
    - symphonia_core::errors::decode_error
    - map_wave_channel_count
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn read_ieee_fmt<B: ReadBytes>(reader: &mut B,bits_per_sample: u16,num_channels:
      u16,len: u32,) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:198,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:201,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:205,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:210,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:216,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:220,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:223,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:268,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:276,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:295,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:305,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:313,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:321,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:327,1
    - Dst: map_amb_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:335,1
    - Dst: fix_wave_channel_mask
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:342,1
    - Dst: Position::from_wave_channel_mask
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:345,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:346,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:347,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:352,1
    - Dst: FormatData::Extensible
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:352,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 95
    argCount: 4
    argNames:
    - reader
    - bits_per_sample
    - num_channels
    - len
    argTypes:
    - '&mut B'
    - u16
    - u16
    - u32
    constantsTouched: []
    func_position:
      end: 359
      start: 190
    functionDepth: 14
    functionLinenumber: 190
    functionLinenumberEnd: 359
    functionName: WaveFormatChunk::read_ext_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Result::read_u32
    - fix_wave_channel_mask
    - symphonia_core::errors::unsupported_error
    - Result::read_buf_exact
    - map_amb_channel_count
    - FormatData::Extensible
    - Position::from_wave_channel_mask
    - Result::read_u16
    - Channels::Positioned
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_ext_fmt<B: ReadBytes>(reader: &mut B,bits_per_sample: u16,num_channels:
      u16,len: u32,) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:367,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:370,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:373,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:373,1
    - Dst: map_wave_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:376,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:377,1
    - Dst: FormatData::ALaw
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:377,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - reader
    - num_channels
    - len
    argTypes:
    - '&mut B'
    - u16
    - u32
    constantsTouched: []
    func_position:
      end: 378
      start: 361
    functionDepth: 14
    functionLinenumber: 361
    functionLinenumberEnd: 378
    functionName: WaveFormatChunk::read_alaw_pcm_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - FormatData::ALaw
    - u64::from
    - Result::read_u16
    - Ok
    - symphonia_core::errors::decode_error
    - map_wave_channel_count
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn read_alaw_pcm_fmt<B: ReadBytes>(reader: &mut B,num_channels: u16,len:
      u32,) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:386,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:389,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:392,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:392,1
    - Dst: map_wave_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:395,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:396,1
    - Dst: FormatData::MuLaw
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:396,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - reader
    - num_channels
    - len
    argTypes:
    - '&mut B'
    - u16
    - u32
    constantsTouched: []
    func_position:
      end: 397
      start: 380
    functionDepth: 14
    functionLinenumber: 380
    functionLinenumberEnd: 397
    functionName: WaveFormatChunk::read_mulaw_pcm_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - FormatData::MuLaw
    - Result::read_u16
    - Ok
    - symphonia_core::errors::decode_error
    - map_wave_channel_count
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn read_mulaw_pcm_fmt<B: ReadBytes>(reader: &mut B,num_channels: u16,len:
      u32,) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:401,1
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:402,1
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:403,1
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:404,1
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:405,1
    - Dst: Result::make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 408
      start: 399
    functionDepth: 11
    functionLinenumber: 399
    functionLinenumberEnd: 408
    functionName: WaveFormatChunk::packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Result::make_packet_info
    - make_packet_info
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:416,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:419,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:420,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:421,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:422,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:423,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:424,1
    - Dst: Self::read_pcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:439,1
    - Dst: Self::read_adpcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:442,1
    - Dst: Self::read_ieee_fmt
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:452,1
    - Dst: Self::read_ext_fmt
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:456,1
    - Dst: Self::read_alaw_pcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:459,1
    - Dst: Self::read_mulaw_pcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:461,1
    - Dst: Self::read_adpcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:463,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:472,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:475,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 3
    argNames:
    - reader
    - _tag
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 482
      start: 412
    functionDepth: 14
    functionLinenumber: 412
    functionLinenumberEnd: 482
    functionName: WaveFormatChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Self::read_pcm_fmt
    - Result::read_u32
    - Self::read_mulaw_pcm_fmt
    - symphonia_core::errors::unsupported_error
    - Self::read_alaw_pcm_fmt
    - Result::read_u16
    - Self::read_adpcm_fmt
    - Self::read_ext_fmt
    - Self::read_ieee_fmt
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], len: u32) ->
      Result<WaveFormatChunk>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 65
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 535
      start: 486
    functionDepth: 0
    functionLinenumber: 486
    functionLinenumberEnd: 535
    functionName: WaveFormatChunk::fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:547,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:550,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:550,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - reader
    - _tag
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 551
      start: 543
    functionDepth: 14
    functionLinenumber: 543
    functionLinenumberEnd: 551
    functionName: FactChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_u32
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], len: u32) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 559
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 559
    functionName: FactChunk::fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ChunksReader::<NullChunks>::new
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:569,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:569,1
    - Dst: Self::finish
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 570
      start: 568
    functionDepth: 14
    functionLinenumber: 568
    functionLinenumberEnd: 570
    functionName: ListChunk::skip
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Self::finish
    - Some
    - ChunksReader::<NullChunks>::new
    linkageType: ''
    returnType: Result
    signature: 'pub fn skip<B: ReadBytes>(&self, reader: &mut B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:578,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:581,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:581,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - reader
    - _tag
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 582
      start: 574
    functionDepth: 13
    functionLinenumber: 574
    functionLinenumberEnd: 582
    functionName: ListChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Result::read_quad_bytes
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], len: u32) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 591
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 591
    functionName: ListChunk::fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:602,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:603,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - reader
    - tag
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 604
      start: 600
    functionDepth: 13
    functionLinenumber: 600
    functionLinenumberEnd: 604
    functionName: InfoChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Result::read_boxed_slice_exact
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, tag: [u8; 4], len: u32) ->
      Result<InfoChunk>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:615,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:615,1
    - Dst: filter
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:615,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 616
      start: 612
    functionDepth: 0
    functionLinenumber: 612
    functionLinenumberEnd: 616
    functionName: DataChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - Ok
    - filter
    - Some
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(_: &mut B, _: [u8; 4], len: u32) -> Result<DataChunk>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:2,1
    - Dst: ChunkParser::<$result>::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:2,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 483
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 483
    functionName: parser
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 9
    functionsReached:
    - Some
    - ChunkParser::<$result>::new
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:635,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:636,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:637,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:638,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - tag
    - len
    argTypes:
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 641
      start: 633
    functionDepth: 1
    functionLinenumber: 633
    functionLinenumberEnd: 641
    functionName: RiffWaveChunks::parse_tag
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached:
    - parser
    linkageType: ''
    returnType: Option
    signature: 'fn parse_tag(tag: [u8; 4], len: u32) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 2
    argNames:
    - tag
    - len
    argTypes:
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 655
      start: 649
    functionDepth: 0
    functionLinenumber: 649
    functionLinenumberEnd: 655
    functionName: RiffInfoListChunks::parse_tag
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: 'fn parse_tag(tag: [u8; 4], len: u32) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:659,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:659,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - track
    - fact
    argTypes:
    - '&mut Track'
    - '&FactChunk'
    constantsTouched: []
    func_position:
      end: 660
      start: 658
    functionDepth: 1
    functionLinenumber: 658
    functionLinenumberEnd: 660
    functionName: append_fact_params
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 1
    functionsReached:
    - Result::with_num_frames
    - u64::from
    linkageType: ''
    returnType: void
    signature: 'pub fn append_fact_params(track: &mut Track, fact: &FactChunk)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:663,1
    - Dst: ChunksReader::<RiffInfoListChunks>::new
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:665,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:665,1
    - Dst: Result::next
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:667,1
    - Dst: Result::parse
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:668,1
    - Dst: riff::parse_riff_info_chunk
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:670,1
    - Dst: Result::finish
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:673,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:675,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:675,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - source
    - len
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - u32
    constantsTouched: []
    func_position:
      end: 676
      start: 662
    functionDepth: 16
    functionLinenumber: 662
    functionLinenumberEnd: 676
    functionName: read_info_chunk
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 1
    functionsReached:
    - Self::build
    - MetadataBuilder::new
    - Result::finish
    - Result::next
    - ChunksReader::<RiffInfoListChunks>::new
    - Some
    - Result::parse
    - riff::parse_riff_info_chunk
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_info_chunk(source: &mut MediaSourceStream<''_>, len: u32)
      -> Result<MetadataRevision>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u32::count_ones
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:680,1
    - Dst: leading_ones
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:689,1
    - Dst: u32::count_ones
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:694,1
    - Dst: leading_ones
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:695,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 38
    argCount: 2
    argNames:
    - channel_mask
    - num_channels
    argTypes:
    - u32
    - u16
    constantsTouched: []
    func_position:
      end: 701
      start: 679
    functionDepth: 0
    functionLinenumber: 679
    functionLinenumberEnd: 701
    functionName: fix_wave_channel_mask
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 1
    functionsReached:
    - leading_ones
    - u32::count_ones
    linkageType: ''
    returnType: u32
    signature: 'fn fix_wave_channel_mask(mut channel_mask: u32, num_channels: u16)
      -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 713
      start: 704
    functionDepth: 0
    functionLinenumber: 704
    functionLinenumberEnd: 713
    functionName: test_fix_channel_mask
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn test_fix_channel_mask()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: contains
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:718,1
    - Dst: then
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:718,1
    - Dst: Position::from_count
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:720,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:720,1
    - Dst: flatten
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:718,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:718,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:718,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:723,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - count
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 724
      start: 716
    functionDepth: 9
    functionLinenumber: 716
    functionLinenumberEnd: 724
    functionName: map_wave_channel_count
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 5
    functionsReached:
    - flatten
    - Position::from_count
    - contains
    - ok_or
    - then
    - map
    - Error::DecodeError
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn map_wave_channel_count(count: u16) -> Result<Channels>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 737
      start: 727
    functionDepth: 0
    functionLinenumber: 727
    functionLinenumberEnd: 737
    functionName: test_map_wave_channel_count
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn test_map_wave_channel_count()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:851,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:854,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:854,1
    - Dst: ChannelLabel::AmbisonicBFormat
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:856,1
    - Dst: "iter()\n        .map(|&c| ChannelLabel::AmbisonicBFormat(c))\n       \
        \ .collect::<Vec<ChannelLabel>>"
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:854,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:854,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:860,1
    - Dst: Channels::Custom
      Src: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs:860,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 1
    argNames:
    - count
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 861
      start: 740
    functionDepth: 11
    functionLinenumber: 740
    functionLinenumberEnd: 861
    functionName: map_amb_channel_count
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
    functionUses: 1
    functionsReached:
    - ChannelLabel::AmbisonicBFormat
    - Channels::Custom
    - "iter()\n        .map(|&c| ChannelLabel::AmbisonicBFormat(c))\n        .collect::<Vec<ChannelLabel>>"
    - iter
    - map
    - into_boxed_slice
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn map_amb_channel_count(count: u16) -> Result<Channels>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:74,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:77,1
    - Dst: Option::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:81,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:84,1
    - Dst: Option::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:88,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:91,1
    - Dst: ChunksReader::<RiffAiffChunks>::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:95,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:95,1
    - Dst: Option::is_seekable
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:104,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:106,1
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:107,1
    - Dst: Self::next
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:110,1
    - Dst: None::is_some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:114,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:115,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:119,1
    - Dst: Result::parse_aiff
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:119,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:120,1
    - Dst: Result::parse_aifc
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:120,1
    - Dst: None::is_some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:126,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:127,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:130,1
    - Dst: Result::parse
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:130,1
    - Dst: None::as_ref
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:139,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:139,1
    - Dst: Option::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:141,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:141,1
    - Dst: None::is_some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:149,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:150,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:154,1
    - Dst: Result::parse
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:154,1
    - Dst: None::is_some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:158,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:159,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:163,1
    - Dst: Result::parse_and_skip_unread
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:163,1
    - Dst: Result::parse_and_skip_unread
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:167,1
    - Dst: '&[Attachment]::push'
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:169,1
    - Dst: Attachment::VendorData
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:169,1
    - Dst: Result::parse_and_skip_unread
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:176,1
    - Dst: Self::add_tag
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:177,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:179,1
    - Dst: Result::parse_and_skip_unread
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:179,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:184,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:184,1
    - Dst: None::unwrap_or_else
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:187,1
    - Dst: SoundChunk::empty
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:187,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:187,1
    - Dst: Option::seek
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:191,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:191,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:195,1
    - Dst: process_markers
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:198,1
    - Dst: Metadata::push
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:202,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:202,1
    - Dst: Metadata::push
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:206,1
    - Dst: None::packet_info
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:211,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:213,1
    - Dst: Result::with_max_frames_per_packet
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:214,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:215,1
    - Dst: '&mut Self::with_frames_per_block'
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:214,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:216,1
    - Dst: common::append_format_params
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:219,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:219,1
    - Dst: Track::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:222,1
    - Dst: Result::with_codec_params
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:223,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:223,1
    - Dst: common::append_data_params
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:227,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:227,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:230,1
    - Dst: MediaInfo::from_track
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:232,1
    - Dst: Option::or
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:235,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:239,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:239,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 236
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 241
      start: 69
    functionDepth: 13
    functionLinenumber: 69
    functionLinenumberEnd: 241
    functionName: AiffReader::try_new
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 1
    functionsReached:
    - MetadataBuilder::new
    - None::ok_or
    - None::is_some
    - get
    - symphonia_core::errors::unsupported_error
    - None::as_ref
    - Result::parse_aiff
    - CodecParameters::Audio
    - Track::new
    - Option::read_quad_bytes
    - Ok
    - symphonia_core::errors::decode_error
    - process_markers
    - Self::build
    - expect
    - unwrap_or_default
    - SoundChunk::empty
    - Option::seek
    - Metadata::push
    - map
    - Attachment::VendorData
    - common::append_data_params
    - Result::parse
    - Self::add_tag
    - Option::ignore_bytes
    - Option::pos
    - AudioCodecParameters::new
    - Result::with_codec_params
    - MediaInfo::from_track
    - '&[Attachment]::push'
    - u64::from
    - '&mut Self::with_frames_per_block'
    - Some
    - Vec::new
    - Result::with_max_frames_per_packet
    - Result::parse_aifc
    - ChunksReader::<RiffAiffChunks>::new
    - None::unwrap_or_else
    - common::append_format_params
    - Self::next
    - Error::DecodeError
    - Option::is_seekable
    - Option::or
    - SeekFrom::Start
    - None::packet_info
    - Option::read_be_u32
    - Result::parse_and_skip_unread
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:250,1
    - Dst: HashMap::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:251,1
    - Dst: TimeBase::from_recip
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:255,1
    - Dst: Option::reserve
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:258,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:258,1
    - Dst: Self::contains_key
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:264,1
    - Dst: Self::insert
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:265,1
    - Dst: Option::len
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:265,1
    - Dst: Self::calc_time
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:270,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:271,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:270,1
    - Dst: Option::push
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:274,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:288,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:291,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:291,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:291,1
    - Dst: StandardTag::Comment
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:291,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:295,1
    - Dst: Self::get
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:300,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:302,1
    - Dst: Option::is_empty
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:308,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:309,1
    - Dst: Option::into_iter
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:310,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:310,1
    - Dst: collect
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:310,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 88
    argCount: 4
    argNames:
    - comm
    - mark
    - comt
    - builder
    argTypes:
    - '&CommonChunk'
    - Option<MarkerChunk>
    - Option<CommentsChunk>
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 318
      start: 244
    functionDepth: 10
    functionLinenumber: 244
    functionLinenumberEnd: 318
    functionName: process_markers
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 1
    functionsReached:
    - Self::get
    - Option::len
    - Option::push
    - Self::calc_time
    - push
    - Option::is_empty
    - Tag::new_from_parts
    - Self::insert
    - Self::contains_key
    - map
    - collect
    - StandardTag::Comment
    - Option::into_iter
    - len
    - Some
    - Vec::new
    - Option::expect
    - Timestamp::from
    - Arc::new
    - Option::reserve
    - HashMap::new
    - TimeBase::from_recip
    - '&mut MetadataBuilder::add_tag'
    - clone
    linkageType: ''
    returnType: Option
    signature: 'fn process_markers(comm: &CommonChunk,mark: Option<MarkerChunk>,comt:
      Option<CommentsChunk>,builder: &mut MetadataBuilder,) -> Option<ChapterGroup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:324,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:325,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:326,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:329,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:333,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:336,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:336,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 1
    argNames:
    - src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 337
      start: 321
    functionDepth: 13
    functionLinenumber: 321
    functionLinenumberEnd: 337
    functionName: AiffReader::score
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached:
    - Score::Supported
    - Ok
    - ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
    - ScopedStream<&mut MediaSourceStream<'_>>::read_quad_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn score(mut src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:345,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:345,1
    - Dst: AiffReader::try_new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 346
      start: 341
    functionDepth: 10
    functionLinenumber: 341
    functionLinenumberEnd: 346
    functionName: AiffReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - AiffReader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 358
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 358
    functionName: AiffReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 364
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 364
    functionName: AiffReader::format_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 368
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 368
    functionName: AiffReader::media_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: common::next_packet
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:371,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 378
      start: 370
    functionDepth: 16
    functionLinenumber: 370
    functionLinenumberEnd: 378
    functionName: AiffReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached:
    - common::next_packet
    - unwrap_or
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 382
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionName: AiffReader::metadata
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 386
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 386
    functionName: AiffReader::attachments
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Attachment]'
    signature: fn attachments(&self) -> &[Attachment]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 390
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 390
    functionName: AiffReader::chapters
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 394
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 394
    functionName: AiffReader::tracks
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:397,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:398,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:409,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:409,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:412,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:412,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:412,1
    - Dst: is_negative
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:417,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:418,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:424,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:425,1
    - Dst: get_actual_ts
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:437,1
    - Dst: Timestamp::get
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:441,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:441,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:445,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:446,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:446,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:451,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:453,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:456,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs:466,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 86
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 467
      start: 396
    functionDepth: 11
    functionLinenumber: 396
    functionLinenumberEnd: 467
    functionName: AiffReader::seek
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached:
    - Timestamp::get
    - Ok
    - calc_timestamp
    - get
    - pos
    - is_seekable
    - Error::SeekError
    - SeekFrom::Start
    - symphonia_core::errors::seek_error
    - seek
    - get_actual_ts
    - is_negative
    - ignore_bytes
    - is_empty
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 474
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 474
    functionName: AiffReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:58,1
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:61,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:62,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - valid_bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 63
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 63
    functionName: CommonChunk::read_pcm_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - map_aiff_channel_count
    - FormatData::Pcm
    linkageType: ''
    returnType: Result
    signature: 'fn read_pcm_fmt(valid_bits_per_sample: u16, num_channels: u16) ->
      Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:69,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:70,1
    - Dst: FormatData::ALaw
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: CommonChunk::read_alaw_pcm_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - FormatData::ALaw
    - map_aiff_channel_count
    linkageType: ''
    returnType: Result
    signature: 'fn read_alaw_pcm_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:77,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:78,1
    - Dst: FormatData::MuLaw
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 79
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionName: CommonChunk::read_mulaw_pcm_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - FormatData::MuLaw
    - map_aiff_channel_count
    linkageType: ''
    returnType: Result
    signature: 'fn read_mulaw_pcm_fmt(bits_per_sample: u16, num_channels: u16) ->
      Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:83,1
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:85,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:86,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:86,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: CommonChunk::read_in24_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - map_aiff_channel_count
    - FormatData::Pcm
    linkageType: ''
    returnType: Result
    signature: 'fn read_in24_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:96,1
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:98,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:99,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 105
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 105
    functionName: CommonChunk::read_in32_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - map_aiff_channel_count
    - FormatData::Pcm
    linkageType: ''
    returnType: Result
    signature: 'fn read_in32_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:109,1
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:111,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:112,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 118
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 118
    functionName: CommonChunk::read_23ni_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - map_aiff_channel_count
    - FormatData::Pcm
    linkageType: ''
    returnType: Result
    signature: 'fn read_23ni_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:125,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:126,1
    - Dst: FormatData::IeeeFloat
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 127
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 127
    functionName: CommonChunk::read_fl32_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - FormatData::IeeeFloat
    - map_aiff_channel_count
    linkageType: ''
    returnType: Result
    signature: 'fn read_fl32_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:134,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:135,1
    - Dst: FormatData::IeeeFloat
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 136
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 136
    functionName: CommonChunk::read_fl64_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - FormatData::IeeeFloat
    - map_aiff_channel_count
    linkageType: ''
    returnType: Result
    signature: 'fn read_fl64_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:141,1
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:144,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:145,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:145,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 151
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 151
    functionName: CommonChunk::read_sowt_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - map_aiff_channel_count
    - FormatData::Pcm
    linkageType: ''
    returnType: Result
    signature: 'fn read_sowt_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:156,1
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:159,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:160,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 166
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 166
    functionName: CommonChunk::read_twos_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - map_aiff_channel_count
    - FormatData::Pcm
    linkageType: ''
    returnType: Result
    signature: 'fn read_twos_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:171,1
    - Dst: map_aiff_channel_count
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:174,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:175,1
    - Dst: FormatData::Pcm
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bits_per_sample
    - num_channels
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 181
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 181
    functionName: CommonChunk::read_raw_fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - map_aiff_channel_count
    - FormatData::Pcm
    linkageType: ''
    returnType: Result
    signature: 'fn read_raw_fmt(bits_per_sample: u16, num_channels: u16) -> Result<FormatData>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:185,1
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:186,1
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:187,1
    - Dst: make_packet_info
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:188,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:190,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 196
      start: 183
    functionDepth: 11
    functionLinenumber: 183
    functionLinenumberEnd: 196
    functionName: CommonChunk::packet_info
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::errors::unsupported_error
    - make_packet_info
    linkageType: ''
    returnType: Result
    signature: pub fn packet_info(&self) -> Result<PacketInfo>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:201,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:202,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:203,1
    - Dst: read_sample_rate
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:204,1
    - Dst: Self::read_pcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:205,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:207,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - reader
    - _tag
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 208
      start: 200
    functionDepth: 14
    functionLinenumber: 200
    functionLinenumberEnd: 208
    functionName: CommonChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - Self::read_pcm_fmt
    - read_sample_rate
    - Result::read_be_u16
    - Ok
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], _: u32) -> Result<CommonChunk>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 45
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 252
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 252
    functionName: CommonChunk::fmt
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ChunkParser::parse
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 263
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionName: ChunkParser::parse_aiff
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - ChunkParser::parse
    linkageType: ''
    returnType: Result
    signature: 'fn parse_aiff<B: ReadBytes>(self, reader: &mut B) -> Result<CommonChunk>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:266,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:267,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:268,1
    - Dst: read_sample_rate
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:269,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:270,1
    - Dst: ignore_pascal_string
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:273,1
    - Dst: CommonChunk::read_pcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:276,1
    - Dst: CommonChunk::read_alaw_pcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:277,1
    - Dst: CommonChunk::read_mulaw_pcm_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:278,1
    - Dst: CommonChunk::read_in24_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:279,1
    - Dst: CommonChunk::read_in32_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:280,1
    - Dst: CommonChunk::read_23ni_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:281,1
    - Dst: CommonChunk::read_fl32_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:282,1
    - Dst: CommonChunk::read_fl64_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:283,1
    - Dst: CommonChunk::read_sowt_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:284,1
    - Dst: CommonChunk::read_twos_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:285,1
    - Dst: CommonChunk::read_raw_fmt
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:286,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:287,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:290,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 291
      start: 265
    functionDepth: 14
    functionLinenumber: 265
    functionLinenumberEnd: 291
    functionName: ChunkParser::parse_aifc
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - CommonChunk::read_sowt_fmt
    - CommonChunk::read_twos_fmt
    - CommonChunk::read_fl64_fmt
    - CommonChunk::read_raw_fmt
    - symphonia_core::errors::unsupported_error
    - Result::read_quad_bytes
    - read_sample_rate
    - CommonChunk::read_fl32_fmt
    - Result::read_be_u16
    - CommonChunk::read_mulaw_pcm_fmt
    - CommonChunk::read_alaw_pcm_fmt
    - CommonChunk::read_pcm_fmt
    - CommonChunk::read_in32_fmt
    - CommonChunk::read_in24_fmt
    - CommonChunk::read_23ni_fmt
    - ignore_pascal_string
    - Ok
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'fn parse_aifc<B: ReadBytes>(self, reader: &mut B) -> Result<CommonChunk>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data_start_pos
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 308
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionName: SoundChunk::empty
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Some
    linkageType: ''
    returnType: Self
    signature: 'pub fn empty(data_start_pos: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:315,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:318,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:319,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:322,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:326,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:329,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:329,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:331,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:335,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:335,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 3
    argNames:
    - reader
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 336
      start: 312
    functionDepth: 14
    functionLinenumber: 312
    functionLinenumberEnd: 336
    functionName: SoundChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - symphonia_core::errors::unsupported_error
    - Result::pos
    - Some
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_be_u32
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _: [u8; 4], len: u32) -> Result<SoundChunk>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:351,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:353,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:353,1
    - Dst: Result::read_be_i16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:356,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:357,1
    - Dst: read_pascal_string
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:358,1
    - Dst: Option::push
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:360,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:363,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - reader
    - _tag
    - _len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 364
      start: 350
    functionDepth: 14
    functionLinenumber: 350
    functionLinenumberEnd: 364
    functionName: MarkerChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - Result::read_be_i16
    - Ok
    - Result::read_be_u16
    - read_pascal_string
    - Option::push
    - Result::read_be_u32
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], _len: u32) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:374,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:377,1
    - Dst: read_pascal_string
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:381,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:386,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:389,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:392,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:394,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 3
    argNames:
    - reader
    - _tag
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 395
      start: 373
    functionDepth: 13
    functionLinenumber: 373
    functionLinenumberEnd: 395
    functionName: AppSpecificChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Result::pos
    - Result::read_quad_bytes
    - Result::read_boxed_slice_exact
    - read_pascal_string
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], len: u32) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:412,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:414,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:414,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:417,1
    - Dst: Result::read_be_i16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:418,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:419,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:420,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:420,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:422,1
    - Dst: decode_string
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:422,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:425,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - reader
    - _tag
    - _len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 426
      start: 411
    functionDepth: 14
    functionLinenumber: 411
    functionLinenumberEnd: 426
    functionName: CommentsChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - push
    - Result::read_be_u16
    - Result::read_be_u32
    - Result::read_boxed_slice_exact
    - decode_string
    - Ok
    - Result::read_be_i16
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], _len: u32) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:435,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:437,1
    - Dst: decode_string
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:437,1
    - Dst: StandardTag::TrackTitle
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:440,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:440,1
    - Dst: StandardTag::Encoder
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:441,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:441,1
    - Dst: StandardTag::Copyright
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:442,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:442,1
    - Dst: StandardTag::Comment
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:443,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:443,1
    - Dst: str::from_utf8
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:447,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:449,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:451,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:451,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:453,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 3
    argNames:
    - reader
    - tag
    - len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 454
      start: 434
    functionDepth: 13
    functionLinenumber: 434
    functionLinenumberEnd: 454
    functionName: TextChunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - Tag::new_from_parts
    - Arc::new
    - Some
    - str::from_utf8
    - StandardTag::Encoder
    - StandardTag::Comment
    - Result::read_boxed_slice_exact
    - decode_string
    - StandardTag::Copyright
    - Ok
    - symphonia_core::errors::decode_error
    - StandardTag::TrackTitle
    - clone
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, tag: [u8; 4], len: u32) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:463,1
    - Dst: riff::read_riff_id3_chunk
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:464,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:465,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - reader
    - _tag
    - _len
    argTypes:
    - '&mut B'
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 466
      start: 462
    functionDepth: 10
    functionLinenumber: 462
    functionLinenumberEnd: 466
    functionName: Id3Chunk::parse
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - Vec::new
    - Ok
    - riff::read_riff_id3_chunk
    linkageType: ''
    returnType: Result
    signature: 'fn parse<B: ReadBytes>(reader: &mut B, _tag: [u8; 4], _len: u32) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:488,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:489,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:490,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:491,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:492,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:494,1
    - Dst: parser
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - tag
    - len
    argTypes:
    - '[u8; 4]'
    - u32
    constantsTouched: []
    func_position:
      end: 499
      start: 486
    functionDepth: 1
    functionLinenumber: 486
    functionLinenumberEnd: 499
    functionName: RiffAiffChunks::parse_tag
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 0
    functionsReached:
    - parser
    linkageType: ''
    returnType: Option
    signature: 'fn parse_tag(tag: [u8; 4], len: u32) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:504,1
    - Dst: Extended::from_be_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:506,1
    - Dst: to_f64
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:506,1
    - Dst: is_infinite
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:509,1
    - Dst: is_nan
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:509,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:510,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:514,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:516,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:519,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 520
      start: 502
    functionDepth: 13
    functionLinenumber: 502
    functionLinenumberEnd: 520
    functionName: read_sample_rate
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 2
    functionsReached:
    - Extended::from_be_bytes
    - is_infinite
    - Result::read_buf_exact
    - is_nan
    - NonZero::new
    - Ok
    - symphonia_core::errors::decode_error
    - to_f64
    linkageType: ''
    returnType: Result
    signature: 'fn read_sample_rate<B: ReadBytes>(reader: &mut B) -> Result<NonZero<u32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:523,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:523,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:527,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:527,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 528
      start: 522
    functionDepth: 13
    functionLinenumber: 522
    functionLinenumberEnd: 528
    functionName: ignore_pascal_string
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Result::ignore_bytes
    - u64::from
    - Result::read_byte
    linkageType: ''
    returnType: Result
    signature: 'fn ignore_pascal_string<B: ReadBytes>(reader: &mut B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:531,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:532,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:532,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:538,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:541,1
    - Dst: decode_string
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:541,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 542
      start: 530
    functionDepth: 13
    functionLinenumber: 530
    functionLinenumberEnd: 542
    functionName: read_pascal_string
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 2
    functionsReached:
    - usize::from
    - Result::read_byte
    - Result::read_boxed_slice_exact
    - decode_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read_pascal_string<B: ReadBytes>(reader: &mut B) -> Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: text::decode_iso8859_1_lossy
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:546,1
    - Dst: impl Iterator::take_while
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:546,1
    - Dst: collect
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:546,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 547
      start: 544
    functionDepth: 12
    functionLinenumber: 544
    functionLinenumberEnd: 547
    functionName: decode_string
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 3
    functionsReached:
    - impl Iterator::take_while
    - collect
    - text::decode_iso8859_1_lossy
    linkageType: ''
    returnType: String
    signature: 'fn decode_string(data: &[u8]) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:551,1
    - Dst: Channels::Discrete
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:557,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs:559,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - count
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 560
      start: 549
    functionDepth: 0
    functionLinenumber: 549
    functionLinenumberEnd: 560
    functionName: map_aiff_channel_count
    functionSourceFile: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
    functionUses: 11
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - Channels::Discrete
    linkageType: ''
    returnType: Result
    signature: 'fn map_aiff_channel_count(count: u16) -> Result<Channels>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:68,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: CafReader::score
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:77,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:77,1
    - Dst: CafReader::try_new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 10
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: CafReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - CafReader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: support_format
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: CafReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: CafReader::format_info
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: CafReader::media_info
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pos
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:97,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:100,1
    - Dst: EbmlError::get
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:100,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:101,1
    - Dst: '&mut Self::get'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:101,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:113,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:120,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:123,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:126,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:126,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:131,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:136,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:136,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:138,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:138,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:141,1
    - Dst: read_boxed_slice
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:144,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:146,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:146,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:146,1
    - Dst: PagePackets::get
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:149,1
    - Dst: read_boxed_slice
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:151,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:152,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:152,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:152,1
    - Dst: PagePackets::len
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:154,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:155,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:158,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:161,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 88
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 163
      start: 94
    functionDepth: 9
    functionLinenumber: 94
    functionLinenumberEnd: 163
    functionName: CafReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - read_boxed_slice
    - pos
    - Some
    - map
    - checked_add
    - '&mut Self::get'
    - min
    - and_then
    - EbmlError::get
    - 'symphonia_core::

      errors::decode_error'
    - Packet::new
    - checked_mul
    - PagePackets::get
    - Ok
    - saturating_sub
    - PagePackets::len
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: CafReader::metadata
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: CafReader::chapters
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: CafReader::tracks
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CafReader::time_base
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:182,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:182,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:182,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:184,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:184,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:184,1
    - Dst: CafReader::seek_bounds
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:189,1
    - Dst: 'symphonia_core::

        errors::seek_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:192,1
    - Dst: 'symphonia_core::

        errors::seek_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:196,1
    - Dst: '&mut Self::get'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:202,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:210,1
    - Dst: '&mut Self::get'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:210,1
    - Dst: duration_from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:217,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:217,1
    - Dst: Result::align_down
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:219,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:219,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:217,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:220,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:223,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:223,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:225,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:232,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:232,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:232,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:235,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:236,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:236,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:239,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:241,1
    - Dst: 'symphonia_core::

        errors::seek_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:244,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:255,1
    - Dst: PagePackets::get
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:258,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:263,1
    - Dst: PagePackets::len
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:267,1
    - Dst: partition_point
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:273,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:275,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:280,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:281,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:281,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:284,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:286,1
    - Dst: 'symphonia_core::

        errors::seek_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:289,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:304,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:306,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 162
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 308
      start: 177
    functionDepth: 11
    functionLinenumber: 177
    functionLinenumberEnd: 308
    functionName: CafReader::seek
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - get
    - pos
    - ok_or
    - Option::ok_or
    - PagePackets::get
    - Ok
    - saturating_sub
    - CafReader::time_base
    - is_seekable
    - checked_add
    - PagePackets::len
    - u64::from
    - CafReader::seek_bounds
    - duration_from
    - '&mut Self::get'
    - 'symphonia_core::

      errors::decode_error'
    - and_then
    - 'symphonia_core::

      errors::seek_error'
    - Result::align_down
    - partition_point
    - calc_timestamp
    - Error::SeekError
    - SeekFrom::Start
    - seek
    - ignore_bytes
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 315
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 315
    functionName: CafReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:322,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:325,1
    - Dst: Result::check_file_header
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:331,1
    - Dst: Result::read_chunks
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:332,1
    - Dst: MediaInfo::from_track
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:335,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:336,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 339
      start: 319
    functionDepth: 15
    functionLinenumber: 319
    functionLinenumberEnd: 339
    functionName: CafReader::try_new
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - MediaInfo::from_track
    - unwrap_or_default
    - Result::read_chunks
    - Result::check_file_header
    - Ok
    - Default::default
    - push
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mss: MediaSourceStream<''s>, opts: FormatOptions) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: first
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:342,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 343
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionName: CafReader::time_base
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - first
    - and_then
    linkageType: ''
    returnType: Option
    signature: fn time_base(&self) -> Option<TimeBase>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: first
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:346,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:346,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:349,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:349,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:346,1
    - Dst: String::map
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:352,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:354,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:354,1
    - Dst: String::and_then
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:355,1
    - Dst: Self::checked_add
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:356,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:355,1
    - Dst: Timestamp::checked_add
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:357,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:357,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 360
      start: 345
    functionDepth: 9
    functionLinenumber: 345
    functionLinenumberEnd: 360
    functionName: CafReader::seek_bounds
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Timestamp::from
    - String::and_then
    - Timestamp::checked_add
    - Ok
    - first
    - i64::from
    - Self::checked_add
    - map
    - and_then
    - String::map
    - unwrap_or
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: fn seek_bounds(&self) -> Result<(Timestamp, Option<Timestamp>)>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_quad_bytes
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:363,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:365,1
    - Dst: read_be_u16
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:368,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:371,1
    - Dst: read_be_u16
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:375,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:377,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 378
      start: 362
    functionDepth: 13
    functionLinenumber: 362
    functionLinenumberEnd: 378
    functionName: CafReader::check_file_header
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - read_quad_bytes
    - Ok
    - 'symphonia_core::

      errors::unsupported_error'
    - read_be_u16
    linkageType: ''
    returnType: Result
    signature: fn check_file_header(&mut self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:385,1
    - Dst: '&AudioDescription::codec_id'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:386,1
    - Dst: '&mut Self::with_sample_rate'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:385,1
    - Dst: '&mut Self::with_bits_per_sample'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:385,1
    - Dst: '&mut Self::with_bits_per_coded_sample'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:385,1
    - Dst: Result::with_channels
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:399,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:399,1
    - Dst: Result::with_channels
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:402,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:402,1
    - Dst: Position::from_count
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:409,1
    - Dst: Result::with_channels
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:411,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:411,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:414,1
    - Dst: Result::with_max_frames_per_packet
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:423,1
    - Dst: '&mut Self::with_frames_per_block'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:423,1
    - Dst: Result::with_max_frames_per_packet
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:429,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:430,1
    - Dst: '&mut Self::with_frames_per_block'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:429,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:431,1
    - Dst: '&AudioDescription::is_variable_packet_format'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:434,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:435,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:439,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:439,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:441,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:441,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:443,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:447,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 81
    argCount: 2
    argNames:
    - desc
    - codec_params
    argTypes:
    - '&AudioDescription'
    - '&mut AudioCodecParameters'
    constantsTouched: []
    func_position:
      end: 448
      start: 380
    functionDepth: 10
    functionLinenumber: 380
    functionLinenumberEnd: 448
    functionName: CafReader::read_audio_description_chunk
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Result::with_channels
    - 'symphonia_core::

      errors::unsupported_error'
    - Self::expect
    - '&mut Self::with_bits_per_sample'
    - Position::from_count
    - '&mut Self::with_frames_per_block'
    - u64::from
    - '&AudioDescription::is_variable_packet_format'
    - Timestamp::new
    - '&mut Self::with_sample_rate'
    - NonZero::new
    - Vec::new
    - '&mut Self::with_bits_per_coded_sample'
    - Result::with_max_frames_per_packet
    - Channels::Positioned
    - Ok
    - '&AudioDescription::codec_id'
    - Result::for_codec
    linkageType: ''
    returnType: Result
    signature: 'fn read_audio_description_chunk(&mut self,desc: &AudioDescription,codec_params:
      &mut AudioCodecParameters,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Track::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:453,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:454,1
    - Dst: Chunk::read
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:459,1
    - Dst: None::is_some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:461,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:462,1
    - Dst: CafReader::read_audio_description_chunk
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:464,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:465,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:478,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:479,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:479,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:480,1
    - Dst: '&mut Self::get'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:480,1
    - Dst: channels
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:486,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:487,1
    - Dst: Result::with_delay
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:498,1
    - Dst: Result::with_padding
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:501,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:508,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:508,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:511,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:523,1
    - Dst: read_object_descriptor_header
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:525,1
    - Dst: ESDescriptor::read
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:529,1
    - Dst: Result::with_extra_data
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:534,1
    - Dst: Result::with_extra_data
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:540,1
    - Dst: None::is_none
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:547,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:549,1
    - Dst: byte_len
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:552,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:553,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:556,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:557,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:557,1
    - Dst: Result::with_codec_params
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:564,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:564,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:567,1
    - Dst: Result::with_duration
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:569,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:569,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/demuxer.rs:572,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 176
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 573
      start: 450
    functionDepth: 14
    functionLinenumber: 450
    functionLinenumberEnd: 573
    functionName: CafReader::read_chunks
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - None::is_some
    - get
    - pos
    - is_some
    - CodecParameters::Audio
    - byte_len
    - Track::new
    - ESDescriptor::read
    - Ok
    - Result::with_duration
    - Chunk::read
    - None::is_none
    - AudioCodecParameters::new
    - read_object_descriptor_header
    - Result::with_codec_params
    - CafReader::read_audio_description_chunk
    - Result::with_num_frames
    - channels
    - Result::with_padding
    - u64::from
    - i64::from
    - Some
    - 'symphonia_core::

      errors::decode_error'
    - '&mut Self::get'
    - Timestamp::from
    - SeekFrom::Start
    - Result::with_extra_data
    - BufReader::new
    - seek
    - Result::with_delay
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: fn read_chunks(&mut self) -> Result<Track>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:86,1
    - Dst: Result::read_be_i64
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:87,1
    - Dst: Chunk::AudioDescription
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:90,1
    - Dst: AudioDescription::read
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:90,1
    - Dst: Chunk::AudioData
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:91,1
    - Dst: AudioData::read
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:91,1
    - Dst: Chunk::ChannelLayout
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:92,1
    - Dst: ChannelLayout::read
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:92,1
    - Dst: Chunk::PacketTable
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:94,1
    - Dst: PacketTable::read
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:94,1
    - Dst: usize::try_from
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:97,1
    - Dst: Chunk::MagicCookie
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:98,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:98,1
    - Dst: invalid_chunk_size_error
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:101,1
    - Dst: invalid_chunk_size_error
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:106,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:108,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:116,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:117,1
    - Dst: invalid_chunk_size_error
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:120,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:126,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:126,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 59
    argCount: 2
    argNames:
    - reader
    - audio_description
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - '&Option<AudioDescription>'
    constantsTouched: []
    func_position:
      end: 127
      start: 82
    functionDepth: 13
    functionLinenumber: 82
    functionLinenumberEnd: 127
    functionName: Chunk::read
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - ChannelLayout::read
    - invalid_chunk_size_error
    - Ok
    - Result::read_quad_bytes
    - Some
    - Chunk::PacketTable
    - Chunk::AudioData
    - Result::read_boxed_slice_exact
    - AudioData::read
    - Chunk::AudioDescription
    - Chunk::ChannelLayout
    - Result::ignore_bytes
    - Result::read_be_i64
    - PacketTable::read
    - usize::try_from
    - AudioDescription::read
    - Chunk::MagicCookie
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(reader: &mut MediaSourceStream<''_>,audio_description:
      &Option<AudioDescription>,) -> Result<Option<Self>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: invalid_chunk_size_error
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:143,1
    - Dst: Result::read_be_f64
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:146,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:148,1
    - Dst: AudioDescriptionFormatId::read
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:151,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:153,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:154,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:156,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:158,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:161,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:163,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - reader
    - chunk_size
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - i64
    constantsTouched: []
    func_position:
      end: 171
      start: 141
    functionDepth: 14
    functionLinenumber: 141
    functionLinenumberEnd: 171
    functionName: AudioDescription::read
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - invalid_chunk_size_error
    - Result::read_be_f64
    - 'symphonia_core::

      errors::decode_error'
    - Ok
    - Result::read_be_u32
    - AudioDescriptionFormatId::read
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(reader: &mut MediaSourceStream<''_>, chunk_size: i64)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:186,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:200,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:217,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:221,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 222
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 222
    functionName: AudioDescription::codec_id
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - 'symphonia_core::

      errors::unsupported_error'
    linkageType: ''
    returnType: Result
    signature: pub fn codec_id(&self) -> Result<AudioCodecId>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: AudioDescription::is_variable_packet_format
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_variable_packet_format(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: size_of::<u32>
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:238,1
    - Dst: invalid_chunk_size_error
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:241,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:244,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:245,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:248,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:253,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:254,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:254,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 2
    argNames:
    - reader
    - chunk_size
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - i64
    constantsTouched: []
    func_position:
      end: 255
      start: 237
    functionDepth: 14
    functionLinenumber: 237
    functionLinenumberEnd: 255
    functionName: AudioData::read
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - invalid_chunk_size_error
    - Result::pos
    - Some
    - Ok
    - Result::read_be_u32
    - Result::ignore_bytes
    - size_of::<u32>
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(reader: &mut MediaSourceStream<''_>, chunk_size: i64)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:279,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:280,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:287,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:294,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:309,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:317,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut MediaSourceStream<''_>'
    constantsTouched: []
    func_position:
      end: 318
      start: 276
    functionDepth: 13
    functionLinenumber: 276
    functionLinenumberEnd: 318
    functionName: AudioDescriptionFormatId::read
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Result::read_quad_bytes
    - 'symphonia_core::

      errors::unsupported_error'
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(reader: &mut MediaSourceStream<''_>) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: invalid_chunk_size_error
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:331,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:334,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:335,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:336,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:337,1
    - Dst: ChannelDescription::read
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:338,1
    - Dst: ".channel_description_count)\n            .map(|_| ChannelDescription::read(reader))\n\
        \            .collect::<Result<_>>"
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:337,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - reader
    - chunk_size
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - i64
    constantsTouched: []
    func_position:
      end: 342
      start: 329
    functionDepth: 14
    functionLinenumber: 329
    functionLinenumberEnd: 342
    functionName: ChannelLayout::read
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - ".channel_description_count)\n            .map(|_| ChannelDescription::read(reader))\n\
      \            .collect::<Result<_>>"
    - ChannelDescription::read
    - invalid_chunk_size_error
    - map
    - Ok
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(reader: &mut MediaSourceStream<''_>, chunk_size: i64)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:348,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:350,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:353,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:354,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:355,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:356,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:357,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:358,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:359,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:360,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:361,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:362,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:363,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:364,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:365,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:366,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:367,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:368,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:369,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:370,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:372,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:373,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:374,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:376,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:377,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:378,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:379,1
    - Dst: ChannelLabel::Discrete
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:382,1
    - Dst: ChannelLabel::Ambisonic
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:386,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:394,1
    - Dst: Channels::Custom
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:397,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:397,1
    - Dst: Position::from_wave_channel_mask
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:402,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:410,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:425,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 88
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 426
      start: 344
    functionDepth: 10
    functionLinenumber: 344
    functionLinenumberEnd: 426
    functionName: ChannelLayout::channels
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 0
    functionsReached:
    - Channels::Custom
    - ChannelLabel::Ambisonic
    - into
    - Self::into_boxed_slice
    - iter
    - Position::from_wave_channel_mask
    - Some
    - Vec::new
    - Self::push
    - Channels::Positioned
    - ChannelLabel::Discrete
    linkageType: ''
    returnType: Option
    signature: pub fn channels(&self) -> Option<Channels>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:440,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:441,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:442,1
    - Dst: Result::read_be_f32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:443,1
    - Dst: Result::read_be_f32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:443,1
    - Dst: Result::read_be_f32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:443,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut MediaSourceStream<''_>'
    constantsTouched: []
    func_position:
      end: 445
      start: 439
    functionDepth: 14
    functionLinenumber: 439
    functionLinenumberEnd: 445
    functionName: ChannelDescription::read
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Result::read_be_f32
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(reader: &mut MediaSourceStream<''_>) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: invalid_chunk_size_error
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:467,1
    - Dst: '&Option<AudioDescription>::as_ref'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:470,1
    - Dst: ok_or_else
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:470,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:472,1
    - Dst: Result::read_be_i64
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:475,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:478,1
    - Dst: Result::read_be_i64
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:481,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:484,1
    - Dst: Result::read_be_i32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:487,1
    - Dst: Result::read_be_i32
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:488,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:491,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:491,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:494,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:494,1
    - Dst: read_variable_length_integer
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:501,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:502,1
    - Dst: read_variable_length_integer
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:502,1
    - Dst: PagePackets::push
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:503,1
    - Dst: Self::checked_add
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:509,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:509,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:511,1
    - Dst: read_variable_length_integer
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:518,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:519,1
    - Dst: PagePackets::push
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:520,1
    - Dst: Self::checked_add
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:526,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:526,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:528,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:536,1
    - Dst: read_variable_length_integer
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:536,1
    - Dst: PagePackets::push
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:537,1
    - Dst: Self::checked_add
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:543,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:543,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:545,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:555,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:562,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 125
    argCount: 3
    argNames:
    - reader
    - desc
    - chunk_size
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - '&Option<AudioDescription>'
    - i64
    constantsTouched: []
    func_position:
      end: 563
      start: 456
    functionDepth: 14
    functionLinenumber: 456
    functionLinenumberEnd: 563
    functionName: PacketTable::read
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - PagePackets::push
    - Timestamp::from
    - Error::Unsupported
    - ok_or_else
    - invalid_chunk_size_error
    - Ok
    - i64::from
    - '&Option<AudioDescription>::as_ref'
    - Duration::from
    - Self::checked_add
    - Error::DecodeError
    - 'symphonia_core::

      errors::decode_error'
    - Option::ok_or
    - min
    - read_variable_length_integer
    - Result::read_be_i64
    - Result::read_be_i32
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(reader: &mut MediaSourceStream<''_>,desc: &Option<AudioDescription>,chunk_size:
      i64,) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 577
      start: 567
    functionDepth: 0
    functionLinenumber: 567
    functionLinenumberEnd: 577
    functionName: PacketTable::fmt
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:596,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - chunk_type
    - chunk_size
    argTypes:
    - '&str'
    - i64
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: invalid_chunk_size_error
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 5
    functionsReached:
    - 'symphonia_core::

      errors::decode_error'
    linkageType: ''
    returnType: Result
    signature: 'fn invalid_chunk_size_error<T>(chunk_type: &str, chunk_size: i64)
      -> Result<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:603,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:608,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:614,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut MediaSourceStream<''_>'
    constantsTouched: []
    func_position:
      end: 615
      start: 599
    functionDepth: 13
    functionLinenumber: 599
    functionLinenumberEnd: 615
    functionName: read_variable_length_integer
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 1
    functionsReached:
    - Ok
    - 'symphonia_core::

      errors::decode_error'
    - Result::read_byte
    linkageType: ''
    returnType: Result
    signature: 'fn read_variable_length_integer(reader: &mut MediaSourceStream<''_>)
      -> Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Cursor::new
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:624,1
    - Dst: Vec::from
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:624,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:625,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:625,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:625,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - bytes
    - expected
    argTypes:
    - '&[u8]'
    - u64
    constantsTouched: []
    func_position:
      end: 630
      start: 623
    functionDepth: 10
    functionLinenumber: 623
    functionLinenumberEnd: 630
    functionName: tests::variable_length_integer_test
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::new
    - Box::new
    - Cursor::new
    - Ok
    - Default::default
    - Vec::from
    linkageType: ''
    returnType: Result
    signature: 'fn variable_length_integer_test(bytes: &[u8], expected: u64) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:634,1
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:635,1
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:636,1
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:637,1
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:638,1
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:639,1
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:640,1
    - Dst: variable_length_integer_test
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:641,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:642,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 643
      start: 633
    functionDepth: 11
    functionLinenumber: 633
    functionLinenumberEnd: 643
    functionName: tests::variable_length_integers
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 0
    functionsReached:
    - variable_length_integer_test
    - Ok
    linkageType: ''
    returnType: Result
    signature: fn variable_length_integers() -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Cursor::new
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:647,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:648,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:648,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-caf/src/chunks.rs:648,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 651
      start: 646
    functionDepth: 10
    functionLinenumber: 646
    functionLinenumberEnd: 651
    functionName: tests::unterminated_variable_length_integer
    functionSourceFile: /src/symphonia/symphonia-format-caf/src/chunks.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::new
    - Default::default
    - Box::new
    - Cursor::new
    linkageType: ''
    returnType: void
    signature: fn unterminated_variable_length_integer()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/symphonia/symphonia-play/src/resampler.rs:31,1
    - Dst: frames
      Src: /src/symphonia/symphonia-play/src/resampler.rs:34,1
    - Dst: output_frames_next
      Src: /src/symphonia/symphonia-play/src/resampler.rs:36,1
    - Dst: frames
      Src: /src/symphonia/symphonia-play/src/resampler.rs:39,1
    - Dst: grow_capacity
      Src: /src/symphonia/symphonia-play/src/resampler.rs:40,1
    - Dst: render_uninit
      Src: /src/symphonia/symphonia-play/src/resampler.rs:43,1
    - Dst: Some
      Src: /src/symphonia/symphonia-play/src/resampler.rs:43,1
    - Dst: rubato::Resampler::process_into_buffer
      Src: /src/symphonia/symphonia-play/src/resampler.rs:48,1
    - Dst: AudioBufferAdapter
      Src: /src/symphonia/symphonia-play/src/resampler.rs:50,1
    - Dst: AudioBufferAdapterMut
      Src: /src/symphonia/symphonia-play/src/resampler.rs:51,1
    - Dst: expect
      Src: /src/symphonia/symphonia-play/src/resampler.rs:48,1
    - Dst: shift
      Src: /src/symphonia/symphonia-play/src/resampler.rs:58,1
    - Dst: copy_to_vec_interleaved
      Src: /src/symphonia/symphonia-play/src/resampler.rs:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&''a mut Vec<T>'
    constantsTouched: []
    func_position:
      end: 65
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 65
    functionName: Resampler::resample_inner
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 2
    functionsReached:
    - rubato::Resampler::process_into_buffer
    - expect
    - output_frames_next
    - frames
    - render_uninit
    - Some
    - grow_capacity
    - AudioBufferAdapter
    - AudioBufferAdapterMut
    - shift
    - clear
    - copy_to_vec_interleaved
    linkageType: ''
    returnType: '&''a [T]'
    signature: 'fn resample_inner<''a>(&mut self, dst: &''a mut Vec<T>) -> &''a [T]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: rubato::Fft::<f32>::new
      Src: /src/symphonia/symphonia-play/src/resampler.rs:73,1
    - Dst: '&AudioSpec::rate'
      Src: /src/symphonia/symphonia-play/src/resampler.rs:74,1
    - Dst: '&AudioSpec::channels'
      Src: /src/symphonia/symphonia-play/src/resampler.rs:78,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-play/src/resampler.rs:78,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-play/src/resampler.rs:73,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-play/src/resampler.rs:83,1
    - Dst: '&AudioSpec::channels'
      Src: /src/symphonia/symphonia-play/src/resampler.rs:83,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-play/src/resampler.rs:83,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-play/src/resampler.rs:85,1
    - Dst: '&AudioSpec::clone'
      Src: /src/symphonia/symphonia-play/src/resampler.rs:85,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-play/src/resampler.rs:86,1
    - Dst: output_frames_max
      Src: /src/symphonia/symphonia-play/src/resampler.rs:86,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-play/src/resampler.rs:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 3
    argNames:
    - spec_in
    - out_sample_rate
    - chunk_size
    argTypes:
    - '&AudioSpec'
    - u32
    - usize
    constantsTouched: []
    func_position:
      end: 89
      start: 72
    functionDepth: 14
    functionLinenumber: 72
    functionLinenumberEnd: 89
    functionName: Resampler::new
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached:
    - Self::expect
    - Option::clone
    - rubato::Fft::<f32>::new
    - '&AudioSpec::channels'
    - output_frames_max
    - '&AudioSpec::rate'
    - Option::count
    - AudioBuffer::new
    - Default::default
    - AudioSpec::new
    - '&AudioSpec::clone'
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(spec_in: &AudioSpec, out_sample_rate: u32, chunk_size:
      usize) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: frames
      Src: /src/symphonia/symphonia-play/src/resampler.rs:96,1
    - Dst: GenericAudioBufferRef<'_>::frames
      Src: /src/symphonia/symphonia-play/src/resampler.rs:97,1
    - Dst: grow_capacity
      Src: /src/symphonia/symphonia-play/src/resampler.rs:100,1
    - Dst: render_uninit
      Src: /src/symphonia/symphonia-play/src/resampler.rs:103,1
    - Dst: Some
      Src: /src/symphonia/symphonia-play/src/resampler.rs:103,1
    - Dst: GenericAudioBufferRef<'_>::copy_to
      Src: /src/symphonia/symphonia-play/src/resampler.rs:106,1
    - Dst: slice_mut
      Src: /src/symphonia/symphonia-play/src/resampler.rs:106,1
    - Dst: Resampler::resample_inner
      Src: /src/symphonia/symphonia-play/src/resampler.rs:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 2
    argNames:
    - src
    - dst
    argTypes:
    - GenericAudioBufferRef<'_>
    - '&''a mut Vec<T>'
    constantsTouched: []
    func_position:
      end: 110
      start: 94
    functionDepth: 12
    functionLinenumber: 94
    functionLinenumberEnd: 110
    functionName: Resampler::resample
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached:
    - GenericAudioBufferRef<'_>::copy_to
    - frames
    - render_uninit
    - Some
    - slice_mut
    - grow_capacity
    - Resampler::resample_inner
    - GenericAudioBufferRef<'_>::frames
    linkageType: ''
    returnType: '&''a [T]'
    signature: 'pub fn resample<''a>(&mut self, src: GenericAudioBufferRef<''_>, dst:
      &''a mut Vec<T>) -> &''a [T]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: frames
      Src: /src/symphonia/symphonia-play/src/resampler.rs:114,1
    - Dst: render_silence
      Src: /src/symphonia/symphonia-play/src/resampler.rs:119,1
    - Dst: Some
      Src: /src/symphonia/symphonia-play/src/resampler.rs:119,1
    - Dst: Resampler::resample_inner
      Src: /src/symphonia/symphonia-play/src/resampler.rs:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&''a mut Vec<T>'
    constantsTouched: []
    func_position:
      end: 124
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 124
    functionName: Resampler::flush
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached:
    - Resampler::resample_inner
    - render_silence
    - frames
    - Some
    linkageType: ''
    returnType: '&''a [T]'
    signature: 'pub fn flush<''a>(&mut self, dst: &''a mut Vec<T>) -> &''a [T]'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - channel
    - frame
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: AudioBufferAdapter::read_sample_unchecked
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: 'unsafe fn read_sample_unchecked(&self, channel: usize, frame: usize)
      -> T'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: num_planes
      Src: /src/symphonia/symphonia-play/src/resampler.rs:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: AudioBufferAdapter::channels
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached:
    - num_planes
    linkageType: ''
    returnType: usize
    signature: fn channels(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: frames
      Src: /src/symphonia/symphonia-play/src/resampler.rs:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: AudioBufferAdapter::frames
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached:
    - frames
    linkageType: ''
    returnType: usize
    signature: fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - channel
    - frame
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: AudioBufferAdapterMut::read_sample_unchecked
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: 'unsafe fn read_sample_unchecked(&self, channel: usize, frame: usize)
      -> T'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: num_planes
      Src: /src/symphonia/symphonia-play/src/resampler.rs:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: AudioBufferAdapterMut::channels
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached:
    - num_planes
    linkageType: ''
    returnType: usize
    signature: fn channels(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: frames
      Src: /src/symphonia/symphonia-play/src/resampler.rs:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: AudioBufferAdapterMut::frames
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached:
    - frames
    linkageType: ''
    returnType: usize
    signature: fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - channel
    - frame
    - value
    argTypes:
    - usize
    - usize
    - '&T'
    constantsTouched: []
    func_position:
      end: 176
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionName: AudioBufferAdapterMut::write_sample_unchecked
    functionSourceFile: /src/symphonia/symphonia-play/src/resampler.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'unsafe fn write_sample_unchecked(&mut self, channel: usize, frame:
      usize, value: &T) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bool::format_info
      Src: /src/symphonia/symphonia-play/src/ui.rs:30,1
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:32,1
    - Dst: print_header
      Src: /src/symphonia/symphonia-play/src/ui.rs:33,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:34,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:40,1
    - Dst: print_media
      Src: /src/symphonia/symphonia-play/src/ui.rs:42,1
    - Dst: bool::media_info
      Src: /src/symphonia/symphonia-play/src/ui.rs:42,1
    - Dst: print_tracks
      Src: /src/symphonia/symphonia-play/src/ui.rs:43,1
    - Dst: bool::tracks
      Src: /src/symphonia/symphonia-play/src/ui.rs:43,1
    - Dst: bool::metadata
      Src: /src/symphonia/symphonia-play/src/ui.rs:47,1
    - Dst: Metadata::current
      Src: /src/symphonia/symphonia-play/src/ui.rs:47,1
    - Dst: print_meta_revision
      Src: /src/symphonia/symphonia-play/src/ui.rs:48,1
    - Dst: bool::metadata
      Src: /src/symphonia/symphonia-play/src/ui.rs:51,1
    - Dst: Metadata::is_latest
      Src: /src/symphonia/symphonia-play/src/ui.rs:51,1
    - Dst: bool::metadata
      Src: /src/symphonia/symphonia-play/src/ui.rs:55,1
    - Dst: Metadata::pop
      Src: /src/symphonia/symphonia-play/src/ui.rs:55,1
    - Dst: print_chapters
      Src: /src/symphonia/symphonia-play/src/ui.rs:58,1
    - Dst: bool::chapters
      Src: /src/symphonia/symphonia-play/src/ui.rs:58,1
    - Dst: print_attachments
      Src: /src/symphonia/symphonia-play/src/ui.rs:59,1
    - Dst: bool::attachments
      Src: /src/symphonia/symphonia-play/src/ui.rs:59,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 55
    argCount: 2
    argNames:
    - path
    - format
    argTypes:
    - '&Path'
    - '&mut Box<dyn FormatReader>'
    constantsTouched: []
    func_position:
      end: 62
      start: 27
    functionDepth: 12
    functionLinenumber: 27
    functionLinenumberEnd: 62
    functionName: print_format
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - bool::format_info
    - print_meta_revision
    - print_attachments
    - print_tracks
    - Metadata::is_latest
    - bool::attachments
    - bool::chapters
    - bool::metadata
    - bool::media_info
    - print_chapters
    - Metadata::current
    - Metadata::pop
    - print_header
    - print_pair
    - print_media
    - print_blank
    - bool::tracks
    linkageType: ''
    returnType: void
    signature: 'pub fn print_format(path: &Path, format: &mut Box<dyn FormatReader>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: print_meta_revision
      Src: /src/symphonia/symphonia-play/src/ui.rs:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rev
    argTypes:
    - '&MetadataRevision'
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 14
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: print_update
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - print_meta_revision
    linkageType: ''
    returnType: void
    signature: 'pub fn print_update(rev: &MetadataRevision)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:71,1
    - Dst: print_header
      Src: /src/symphonia/symphonia-play/src/ui.rs:72,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:75,1
    - Dst: is_positive
      Src: /src/symphonia/symphonia-play/src/ui.rs:78,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:80,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:88,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:94,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:102,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 1
    argNames:
    - media_info
    argTypes:
    - '&MediaInfo'
    constantsTouched: []
    func_position:
      end: 105
      start: 70
    functionDepth: 12
    functionLinenumber: 70
    functionLinenumberEnd: 105
    functionName: print_media
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - print_header
    - print_pair
    - print_blank
    - is_positive
    linkageType: ''
    returnType: void
    signature: 'pub fn print_media(media_info: &MediaInfo)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&[Track]::is_empty'
      Src: /src/symphonia/symphonia-play/src/ui.rs:108,1
    - Dst: symphonia::default::get_codecs
      Src: /src/symphonia/symphonia-play/src/ui.rs:110,1
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:112,1
    - Dst: print_header
      Src: /src/symphonia/symphonia-play/src/ui.rs:113,1
    - Dst: '&[Track]::iter'
      Src: /src/symphonia/symphonia-play/src/ui.rs:115,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:115,1
    - Dst: '&''static CodecRegistry::get_audio_decoder'
      Src: /src/symphonia/symphonia-play/src/ui.rs:118,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-play/src/ui.rs:118,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:120,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:120,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:121,1
    - Dst: fmt_codec_name
      Src: /src/symphonia/symphonia-play/src/ui.rs:121,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:122,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:125,1
    - Dst: fmt_codec_profile
      Src: /src/symphonia/symphonia-play/src/ui.rs:127,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:133,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:136,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:139,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:142,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-play/src/ui.rs:142,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:143,1
    - Dst: '&''static CodecRegistry::get_video_decoder'
      Src: /src/symphonia/symphonia-play/src/ui.rs:148,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-play/src/ui.rs:148,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:150,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:150,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:151,1
    - Dst: fmt_codec_name
      Src: /src/symphonia/symphonia-play/src/ui.rs:151,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:152,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:155,1
    - Dst: fmt_codec_profile
      Src: /src/symphonia/symphonia-play/src/ui.rs:157,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:163,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:166,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:169,1
    - Dst: fmt_codec_name
      Src: /src/symphonia/symphonia-play/src/ui.rs:174,1
    - Dst: '&''static CodecRegistry::get_subtitle_decoder'
      Src: /src/symphonia/symphonia-play/src/ui.rs:175,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-play/src/ui.rs:175,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:178,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:178,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:179,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:180,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:183,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:183,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:188,1
    - Dst: is_positive
      Src: /src/symphonia/symphonia-play/src/ui.rs:191,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:193,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:201,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:206,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:211,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:219,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:224,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:228,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:232,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:235,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:236,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:236,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:247,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 230
    argCount: 1
    argNames:
    - tracks
    argTypes:
    - '&[Track]'
    constantsTouched: []
    func_position:
      end: 252
      start: 107
    functionDepth: 11
    functionLinenumber: 107
    functionLinenumberEnd: 252
    functionName: print_tracks
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 2
    functionsReached:
    - is_positive
    - '&''static CodecRegistry::get_subtitle_decoder'
    - fmt_codec_name
    - print_header
    - symphonia::default::get_codecs
    - fmt_codec_profile
    - iter
    - Option::map
    - print_pair
    - Bullet::Num
    - '&''static CodecRegistry::get_video_decoder'
    - Option::count
    - '&[Track]::is_empty'
    - enumerate
    - '&''static CodecRegistry::get_audio_decoder'
    - is_empty
    - print_blank
    - '&[Track]::iter'
    linkageType: ''
    returnType: void
    signature: 'pub fn print_tracks(tracks: &[Track])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:256,1
    - Dst: print_header
      Src: /src/symphonia/symphonia-play/src/ui.rs:257,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:261,1
    - Dst: fmt_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:261,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:261,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:263,1
    - Dst: fmt_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:263,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:267,1
    - Dst: print_one
      Src: /src/symphonia/symphonia-play/src/ui.rs:268,1
    - Dst: optimal_tag_key_pad
      Src: /src/symphonia/symphonia-play/src/ui.rs:269,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:271,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:271,1
    - Dst: print_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:272,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:272,1
    - Dst: print_one
      Src: /src/symphonia/symphonia-play/src/ui.rs:278,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:278,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:281,1
    - Dst: print_one
      Src: /src/symphonia/symphonia-play/src/ui.rs:282,1
    - Dst: optimal_tag_key_pad
      Src: /src/symphonia/symphonia-play/src/ui.rs:283,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:285,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:285,1
    - Dst: print_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:286,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:286,1
    - Dst: print_one
      Src: /src/symphonia/symphonia-play/src/ui.rs:291,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:292,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:292,1
    - Dst: print_chapter_group
      Src: /src/symphonia/symphonia-play/src/ui.rs:294,1
    - Dst: print_chapter
      Src: /src/symphonia/symphonia-play/src/ui.rs:295,1
    - Dst: print_chapter_group
      Src: /src/symphonia/symphonia-play/src/ui.rs:301,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 89
    argCount: 1
    argNames:
    - chapters
    argTypes:
    - Option<&ChapterGroup>
    constantsTouched: []
    func_position:
      end: 303
      start: 254
    functionDepth: 12
    functionLinenumber: 254
    functionLinenumberEnd: 303
    functionName: print_chapters
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - print_one
    - enumerate
    - print_tag
    - iter
    - print_blank
    - print_chapter
    - print_chapter_group
    - fmt_time
    - optimal_tag_key_pad
    - print_header
    - print_pair
    - is_empty
    - Bullet::Num
    linkageType: ''
    returnType: void
    signature: 'pub fn print_chapters(chapters: Option<&ChapterGroup>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&[Attachment]::is_empty'
      Src: /src/symphonia/symphonia-play/src/ui.rs:306,1
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:307,1
    - Dst: print_header
      Src: /src/symphonia/symphonia-play/src/ui.rs:308,1
    - Dst: '&[Attachment]::iter'
      Src: /src/symphonia/symphonia-play/src/ui.rs:310,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:310,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:313,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:313,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:314,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:316,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:319,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:321,1
    - Dst: fmt_size
      Src: /src/symphonia/symphonia-play/src/ui.rs:321,1
    - Dst: len
      Src: /src/symphonia/symphonia-play/src/ui.rs:321,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:324,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:324,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:325,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:326,1
    - Dst: fmt_size
      Src: /src/symphonia/symphonia-play/src/ui.rs:326,1
    - Dst: len
      Src: /src/symphonia/symphonia-play/src/ui.rs:326,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 63
    argCount: 1
    argNames:
    - attachments
    argTypes:
    - '&[Attachment]'
    constantsTouched: []
    func_position:
      end: 331
      start: 305
    functionDepth: 11
    functionLinenumber: 305
    functionLinenumberEnd: 331
    functionName: print_attachments
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - '&[Attachment]::iter'
    - len
    - '&[Attachment]::is_empty'
    - print_pair
    - Bullet::Num
    - fmt_size
    - print_header
    - enumerate
    - print_blank
    linkageType: ''
    returnType: void
    signature: 'pub fn print_attachments(attachments: &[Attachment])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:334,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:334,1
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:335,1
    - Dst: print_header
      Src: /src/symphonia/symphonia-play/src/ui.rs:336,1
    - Dst: print_tags
      Src: /src/symphonia/symphonia-play/src/ui.rs:339,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:343,1
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:344,1
    - Dst: print_one
      Src: /src/symphonia/symphonia-play/src/ui.rs:345,1
    - Dst: print_tags
      Src: /src/symphonia/symphonia-play/src/ui.rs:346,1
    - Dst: print_visuals
      Src: /src/symphonia/symphonia-play/src/ui.rs:351,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 50
    argCount: 1
    argNames:
    - rev
    argTypes:
    - '&MetadataRevision'
    constantsTouched: []
    func_position:
      end: 352
      start: 333
    functionDepth: 13
    functionLinenumber: 333
    functionLinenumberEnd: 352
    functionName: print_meta_revision
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 2
    functionsReached:
    - print_one
    - print_tags
    - print_visuals
    - print_blank
    - print_header
    - is_empty
    linkageType: ''
    returnType: void
    signature: 'pub fn print_meta_revision(rev: &MetadataRevision)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: optimal_tag_key_pad
      Src: /src/symphonia/symphonia-play/src/ui.rs:358,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:361,1
    - Dst: filter
      Src: /src/symphonia/symphonia-play/src/ui.rs:361,1
    - Dst: Option::has_std_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:361,1
    - Dst: print_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:362,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:362,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:367,1
    - Dst: filter
      Src: /src/symphonia/symphonia-play/src/ui.rs:367,1
    - Dst: Option::has_std_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:367,1
    - Dst: print_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:368,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:368,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 2
    argNames:
    - tags
    - depth
    argTypes:
    - '&[Tag]'
    - usize
    constantsTouched: []
    func_position:
      end: 371
      start: 354
    functionDepth: 12
    functionLinenumber: 354
    functionLinenumberEnd: 371
    functionName: print_tags
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - print_tag
    - iter
    - Option::has_std_tag
    - filter
    - optimal_tag_key_pad
    - Bullet::Num
    linkageType: ''
    returnType: void
    signature: 'pub fn print_tags(tags: &[Tag], depth: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fmt_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:374,1
    - Dst: print_pair_custom
      Src: /src/symphonia/symphonia-play/src/ui.rs:375,1
    - Dst: Self::is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:379,1
    - Dst: print_one
      Src: /src/symphonia/symphonia-play/src/ui.rs:380,1
    - Dst: Self::iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:381,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:381,1
    - Dst: print_pair_custom
      Src: /src/symphonia/symphonia-play/src/ui.rs:382,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:384,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:385,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 4
    argNames:
    - tag
    - bullet
    - pad
    - depth
    argTypes:
    - '&Tag'
    - Bullet
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 392
      start: 373
    functionDepth: 16
    functionLinenumber: 373
    functionLinenumberEnd: 392
    functionName: print_tag
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 3
    functionsReached:
    - print_one
    - Self::is_empty
    - enumerate
    - to_string
    - print_pair_custom
    - fmt_tag
    - Bullet::Num
    - Self::iter
    linkageType: ''
    returnType: void
    signature: 'pub fn print_tag(tag: &Tag, bullet: Bullet, pad: usize, depth: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:395,1
    - Dst: print_blank
      Src: /src/symphonia/symphonia-play/src/ui.rs:396,1
    - Dst: print_header
      Src: /src/symphonia/symphonia-play/src/ui.rs:397,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:399,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:399,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:401,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:401,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-play/src/ui.rs:405,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:405,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:406,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:409,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:419,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:420,1
    - Dst: fmt_color_model
      Src: /src/symphonia/symphonia-play/src/ui.rs:420,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:421,1
    - Dst: String::bits_per_pixel
      Src: /src/symphonia/symphonia-play/src/ui.rs:421,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:424,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:425,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:426,1
    - Dst: fmt_color_model
      Src: /src/symphonia/symphonia-play/src/ui.rs:428,1
    - Dst: print_pair
      Src: /src/symphonia/symphonia-play/src/ui.rs:436,1
    - Dst: fmt_size
      Src: /src/symphonia/symphonia-play/src/ui.rs:436,1
    - Dst: len
      Src: /src/symphonia/symphonia-play/src/ui.rs:436,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:439,1
    - Dst: print_one
      Src: /src/symphonia/symphonia-play/src/ui.rs:440,1
    - Dst: optimal_tag_key_pad
      Src: /src/symphonia/symphonia-play/src/ui.rs:442,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:444,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:444,1
    - Dst: print_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:445,1
    - Dst: Bullet::Num
      Src: /src/symphonia/symphonia-play/src/ui.rs:445,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 100
    argCount: 2
    argNames:
    - info
    - visuals
    argTypes:
    - '&MetadataInfo'
    - '&[Visual]'
    constantsTouched: []
    func_position:
      end: 450
      start: 394
    functionDepth: 11
    functionLinenumber: 394
    functionLinenumberEnd: 450
    functionName: print_visuals
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - fmt_color_model
    - print_one
    - len
    - print_tag
    - iter
    - print_blank
    - is_some
    - String::bits_per_pixel
    - print_pair
    - Bullet::Num
    - fmt_size
    - optimal_tag_key_pad
    - print_header
    - enumerate
    - is_empty
    linkageType: ''
    returnType: void
    signature: 'pub fn print_visuals(info: &MetadataInfo, visuals: &[Visual])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 471
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 471
    functionName: Bullet::fmt
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - value
    - bullet
    - depth
    argTypes:
    - '&str'
    - Bullet
    - usize
    constantsTouched: []
    func_position:
      end: 479
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 479
    functionName: print_one
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn print_one(value: &str, bullet: Bullet, depth: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pad_key
      Src: /src/symphonia/symphonia-play/src/ui.rs:486,1
    - Dst: print_pair_value
      Src: /src/symphonia/symphonia-play/src/ui.rs:491,1
    - Dst: String::len
      Src: /src/symphonia/symphonia-play/src/ui.rs:491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 5
    argNames:
    - key
    - value
    - bullet
    - pad
    - depth
    argTypes:
    - '&str'
    - '&str'
    - Bullet
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 492
      start: 484
    functionDepth: 10
    functionLinenumber: 484
    functionLinenumberEnd: 492
    functionName: print_pair_custom
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 2
    functionsReached:
    - pad_key
    - String::len
    - print_pair_value
    linkageType: ''
    returnType: void
    signature: 'pub fn print_pair_custom(key: &str, value: &str, bullet: Bullet, pad:
      usize, depth: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: print_pair_custom
      Src: /src/symphonia/symphonia-play/src/ui.rs:500,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - key
    - value
    - bullet
    - depth
    argTypes:
    - '&str'
    - '&T'
    - Bullet
    - usize
    constantsTouched: []
    func_position:
      end: 501
      start: 496
    functionDepth: 11
    functionLinenumber: 496
    functionLinenumberEnd: 501
    functionName: print_pair
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 6
    functionsReached:
    - to_string
    - print_pair_custom
    linkageType: ''
    returnType: void
    signature: 'pub fn print_pair<T>(key: &str, value: &T, bullet: Bullet, depth:
      usize)whereT: std::fmt::Display,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:505,1
    - Dst: lines
      Src: /src/symphonia/symphonia-play/src/ui.rs:510,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:510,1
    - Dst: chars
      Src: /src/symphonia/symphonia-play/src/ui.rs:511,1
    - Dst: map
      Src: /src/symphonia/symphonia-play/src/ui.rs:513,1
    - Dst: by_ref
      Src: /src/symphonia/symphonia-play/src/ui.rs:519,1
    - Dst: filter
      Src: /src/symphonia/symphonia-play/src/ui.rs:519,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:519,1
    - Dst: take_while
      Src: /src/symphonia/symphonia-play/src/ui.rs:519,1
    - Dst: Result::is_whitespace
      Src: /src/symphonia/symphonia-play/src/ui.rs:523,1
    - Dst: map
      Src: /src/symphonia/symphonia-play/src/ui.rs:519,1
    - Dst: text::filter::c0_control
      Src: /src/symphonia/symphonia-play/src/ui.rs:525,1
    - Dst: char::from_u32
      Src: /src/symphonia/symphonia-play/src/ui.rs:526,1
    - Dst: expect
      Src: /src/symphonia/symphonia-play/src/ui.rs:526,1
    - Dst: "by_ref()\n                        .filter(text::filter::not_c1_control)\n\
        \                        .enumerate()\n                        .take_while(|(i,\
        \ c)| *i <= 60 || *i <= 80 && !c.is_whitespace())\n                      \
        \  .map(|(_, c)| {\n                            if text::filter::c0_control(&c)\
        \ {\n                                char::from_u32(0x2400 + c as u32).expect(\n\
        \                                    \"C0 control chars map to valid Unicode\
        \ Control Pictures block\",\n                                )\n         \
        \                   }\n                            else {\n              \
        \                  c\n                            }\n                    \
        \    })\n                        .collect::<String>"
      Src: /src/symphonia/symphonia-play/src/ui.rs:519,1
    - Dst: take_while
      Src: /src/symphonia/symphonia-play/src/ui.rs:513,1
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-play/src/ui.rs:536,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/ui.rs:513,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 70
    argCount: 2
    argNames:
    - value
    - lead
    argTypes:
    - '&str'
    - usize
    constantsTouched: []
    func_position:
      end: 555
      start: 504
    functionDepth: 9
    functionLinenumber: 504
    functionLinenumberEnd: 555
    functionName: print_pair_value
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - text::filter::c0_control
    - expect
    - take_while
    - lines
    - Result::is_whitespace
    - Result::is_empty
    - map
    - by_ref
    - filter
    - chars
    - "by_ref()\n                        .filter(text::filter::not_c1_control)\n \
      \                       .enumerate()\n                        .take_while(|(i,\
      \ c)| *i <= 60 || *i <= 80 && !c.is_whitespace())\n                        .map(|(_,\
      \ c)| {\n                            if text::filter::c0_control(&c) {\n   \
      \                             char::from_u32(0x2400 + c as u32).expect(\n  \
      \                                  \"C0 control chars map to valid Unicode Control\
      \ Pictures block\",\n                                )\n                   \
      \         }\n                            else {\n                          \
      \      c\n                            }\n                        })\n      \
      \                  .collect::<String>"
    - enumerate
    - is_empty
    - char::from_u32
    linkageType: ''
    returnType: void
    signature: 'pub fn print_pair_value(value: &str, lead: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - title
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 560
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 560
    functionName: print_header
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn print_header(title: &str)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 565
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 565
    functionName: print_blank
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: pub fn print_blank()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: saturating_mul
      Src: /src/symphonia/symphonia-play/src/ui.rs:583,1
    - Dst: Timestamp::max
      Src: /src/symphonia/symphonia-play/src/ui.rs:584,1
    - Dst: get
      Src: /src/symphonia/symphonia-play/src/ui.rs:584,1
    - Dst: checked_div
      Src: /src/symphonia/symphonia-play/src/ui.rs:583,1
    - Dst: String::get
      Src: /src/symphonia/symphonia-play/src/ui.rs:585,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-play/src/ui.rs:583,1
    - Dst: clamp
      Src: /src/symphonia/symphonia-play/src/ui.rs:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 2
    argNames:
    - ts
    - dur
    argTypes:
    - Timestamp
    - Duration
    constantsTouched: []
    func_position:
      end: 590
      start: 573
    functionDepth: 2
    functionLinenumber: 573
    functionLinenumberEnd: 590
    functionName: p::r::i::n::t::_::p::r::o::g::r::e::s::s::progress_bar
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 0
    functionsReached:
    - saturating_mul
    - get
    - checked_div
    - clamp
    - String::get
    - Timestamp::max
    - unwrap_or
    linkageType: ''
    returnType: '&''static str'
    signature: 'fn progress_bar(ts: Timestamp, dur: Duration) -> &''static str'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::io::stdout
      Src: /src/symphonia/symphonia-play/src/ui.rs:594,1
    - Dst: lock
      Src: /src/symphonia/symphonia-play/src/ui.rs:595,1
    - Dst: Option<TimeBase>::calc_time_saturating
      Src: /src/symphonia/symphonia-play/src/ui.rs:598,1
    - Dst: write_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:600,1
    - Dst: Timestamp::saturating_sub
      Src: /src/symphonia/symphonia-play/src/ui.rs:603,1
    - Dst: Option<TimeBase>::calc_time_saturating
      Src: /src/symphonia/symphonia-play/src/ui.rs:604,1
    - Dst: write_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:606,1
    - Dst: flush
      Src: /src/symphonia/symphonia-play/src/ui.rs:617,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 52
    argCount: 3
    argNames:
    - cur_ts
    - dur
    - tb
    argTypes:
    - Timestamp
    - Option<Duration>
    - Option<TimeBase>
    constantsTouched: []
    func_position:
      end: 618
      start: 567
    functionDepth: 12
    functionLinenumber: 567
    functionLinenumberEnd: 618
    functionName: print_progress
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - std::io::stdout
    - Option<TimeBase>::calc_time_saturating
    - Timestamp::saturating_sub
    - lock
    - write_time
    - flush
    linkageType: ''
    returnType: std::io::Result
    signature: 'pub fn print_progress(cur_ts: Timestamp,dur: Option<Duration>,tb:
      Option<TimeBase>,) -> std::io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    - Dst: map
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    - Dst: fmt_tag
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    - Dst: chars
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    - Dst: count
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    - Dst: Option::max
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    - Dst: clamp
      Src: /src/symphonia/symphonia-play/src/ui.rs:622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 3
    argNames:
    - tags
    - min
    - max
    argTypes:
    - '&[Tag]'
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 623
      start: 621
    functionDepth: 11
    functionLinenumber: 621
    functionLinenumberEnd: 623
    functionName: optimal_tag_key_pad
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 3
    functionsReached:
    - unwrap_or
    - Option::max
    - iter
    - map
    - clamp
    - chars
    - fmt_tag
    - count
    linkageType: ''
    returnType: usize
    signature: 'fn optimal_tag_key_pad(tags: &[Tag], min: usize, max: usize) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::len
      Src: /src/symphonia/symphonia-play/src/ui.rs:627,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - key
    - pad
    argTypes:
    - '&str'
    - usize
    constantsTouched: []
    func_position:
      end: 634
      start: 626
    functionDepth: 1
    functionLinenumber: 626
    functionLinenumberEnd: 634
    functionName: pad_key
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - String::len
    linkageType: ''
    returnType: String
    signature: 'fn pad_key(key: &str, pad: usize) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&str::to_string'
      Src: /src/symphonia/symphonia-play/src/ui.rs:643,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - model
    argTypes:
    - ColorModel
    constantsTouched: []
    func_position:
      end: 645
      start: 636
    functionDepth: 2
    functionLinenumber: 636
    functionLinenumberEnd: 645
    functionName: fmt_color_model
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - '&str::to_string'
    linkageType: ''
    returnType: String
    signature: 'fn fmt_color_model(model: ColorModel) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&str::to_string'
      Src: /src/symphonia/symphonia-play/src/ui.rs:650,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - info
    argTypes:
    - Option<&CodecInfo>
    constantsTouched: []
    func_position:
      end: 652
      start: 647
    functionDepth: 2
    functionLinenumber: 647
    functionLinenumberEnd: 652
    functionName: fmt_codec_name
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - '&str::to_string'
    linkageType: ''
    returnType: String
    signature: 'fn fmt_codec_name(info: Option<&CodecInfo>) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::map
      Src: /src/symphonia/symphonia-play/src/ui.rs:656,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-play/src/ui.rs:656,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/ui.rs:658,1
    - Dst: find
      Src: /src/symphonia/symphonia-play/src/ui.rs:658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - profile
    - info
    argTypes:
    - CodecProfile
    - Option<&CodecInfo>
    constantsTouched: []
    func_position:
      end: 664
      start: 654
    functionDepth: 9
    functionLinenumber: 654
    functionLinenumberEnd: 664
    functionName: fmt_codec_profile
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - find
    - Result::map
    - Option::and_then
    - iter
    linkageType: ''
    returnType: String
    signature: 'fn fmt_codec_profile(profile: CodecProfile, info: Option<&CodecInfo>)
      -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - size
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 687
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 687
    functionName: fmt_size
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: String
    signature: 'fn fmt_size(size: usize) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-play/src/ui.rs:690,1
    - Dst: TimeBase::calc_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:691,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-play/src/ui.rs:691,1
    - Dst: fmt_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - dur
    - tb
    argTypes:
    - Duration
    - TimeBase
    constantsTouched: []
    func_position:
      end: 693
      start: 689
    functionDepth: 13
    functionLinenumber: 689
    functionLinenumberEnd: 693
    functionName: fmt_dur
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 0
    functionsReached:
    - fmt_time
    - TimeBase::calc_time
    - Option::unwrap_or
    - saturating_add
    linkageType: ''
    returnType: String
    signature: 'fn fmt_dur(dur: Duration, tb: TimeBase) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TimeBase::calc_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:696,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-play/src/ui.rs:696,1
    - Dst: fmt_time
      Src: /src/symphonia/symphonia-play/src/ui.rs:697,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ts
    - tb
    argTypes:
    - Timestamp
    - TimeBase
    constantsTouched: []
    func_position:
      end: 698
      start: 695
    functionDepth: 13
    functionLinenumber: 695
    functionLinenumberEnd: 698
    functionName: fmt_ts
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 0
    functionsReached:
    - fmt_time
    - Option::unwrap_or
    - TimeBase::calc_time
    linkageType: ''
    returnType: String
    signature: 'fn fmt_ts(ts: Timestamp, tb: TimeBase) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::parts
      Src: /src/symphonia/symphonia-play/src/ui.rs:701,1
    - Dst: unsigned_abs
      Src: /src/symphonia/symphonia-play/src/ui.rs:703,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-play/src/ui.rs:706,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-play/src/ui.rs:706,1
    - Dst: is_negative
      Src: /src/symphonia/symphonia-play/src/ui.rs:708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 1
    argNames:
    - time
    argTypes:
    - Time
    constantsTouched: []
    func_position:
      end: 711
      start: 700
    functionDepth: 10
    functionLinenumber: 700
    functionLinenumberEnd: 711
    functionName: fmt_time
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 3
    functionsReached:
    - unsigned_abs
    - is_negative
    - String::parts
    - f64::from
    linkageType: ''
    returnType: String
    signature: 'fn fmt_time(time: Time) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::parts
      Src: /src/symphonia/symphonia-play/src/ui.rs:714,1
    - Dst: unsigned_abs
      Src: /src/symphonia/symphonia-play/src/ui.rs:716,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-play/src/ui.rs:719,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-play/src/ui.rs:719,1
    - Dst: is_negative
      Src: /src/symphonia/symphonia-play/src/ui.rs:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 2
    argNames:
    - out
    - time
    argTypes:
    - '&mut W'
    - Time
    constantsTouched: []
    func_position:
      end: 724
      start: 713
    functionDepth: 10
    functionLinenumber: 713
    functionLinenumberEnd: 724
    functionName: write_time
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - unsigned_abs
    - is_negative
    - String::parts
    - f64::from
    linkageType: ''
    returnType: std::io::Result
    signature: 'fn write_time<W: Write>(out: &mut W, time: Time) -> std::io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Cow::from
      Src: /src/symphonia/symphonia-play/src/ui.rs:737,1
    - Dst: into
      Src: /src/symphonia/symphonia-play/src/ui.rs:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - key
    - value
    argTypes:
    - '&''a str'
    - V
    constantsTouched: []
    func_position:
      end: 738
      start: 733
    functionDepth: 14
    functionLinenumber: 733
    functionLinenumberEnd: 738
    functionName: FormattedTag::new
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 1
    functionsReached:
    - Cow::from
    - into
    linkageType: ''
    returnType: Self
    signature: 'fn new<V>(key: &''a str, value: V) -> SelfwhereV: Into<Cow<''a, str>>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:745,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:749,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:751,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:754,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:756,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:757,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:758,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:759,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:760,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:761,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:762,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:763,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:764,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:765,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:766,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:767,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:768,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:769,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:770,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:771,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:772,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:772,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:773,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:774,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:774,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:775,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:776,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:777,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:778,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:779,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:781,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:783,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:784,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:785,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:793,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:794,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:795,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:796,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:797,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:799,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:802,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:804,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:805,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:806,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:807,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:807,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:808,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:809,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:809,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:810,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:811,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:812,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:813,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:814,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:815,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:816,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:817,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:818,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:819,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:820,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:821,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:822,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:823,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:824,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:825,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:826,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:827,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:828,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:829,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:830,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:831,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:832,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:833,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:834,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:835,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:836,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:837,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:838,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:839,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:840,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:841,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:842,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:843,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:844,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:845,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:846,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:847,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:848,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:849,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:849,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:850,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:850,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:851,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:852,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:853,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:854,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:856,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:858,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:859,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:860,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:861,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:862,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:864,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:867,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:870,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:873,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:876,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:879,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:882,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:884,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:885,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:886,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:887,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:888,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:889,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:889,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:890,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:891,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:892,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:893,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:894,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:896,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:896,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:898,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:899,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:901,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:901,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:903,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:904,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:905,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:906,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:906,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:907,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:908,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:908,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:909,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:910,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:911,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:911,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:912,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:913,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:915,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:917,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:918,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:919,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:920,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:921,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:922,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:923,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:923,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:924,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:925,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:926,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:927,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:927,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:928,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:929,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:930,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:931,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:931,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:932,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:933,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:934,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:935,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:937,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:939,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:940,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:941,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:942,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:943,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:944,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:945,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:946,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:947,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:948,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:949,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:950,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:951,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:952,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:953,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:954,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:955,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:956,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:957,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:958,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:959,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:960,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:961,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:962,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:963,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:964,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:965,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:965,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:966,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:967,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:968,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:968,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:969,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:970,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:971,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:972,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:973,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:973,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:974,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:975,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:975,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:976,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:977,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:977,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:978,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:979,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:979,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:980,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:981,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:982,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:983,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:984,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:985,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:986,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:987,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:988,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:989,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:990,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:991,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:992,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:992,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:993,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:994,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-play/src/ui.rs:994,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:995,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:996,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:997,1
    - Dst: FormattedTag::new
      Src: /src/symphonia/symphonia-play/src/ui.rs:999,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 819
    argCount: 1
    argNames:
    - tag
    argTypes:
    - '&Tag'
    constantsTouched: []
    func_position:
      end: 1001
      start: 741
    functionDepth: 15
    functionLinenumber: 741
    functionLinenumberEnd: 1001
    functionName: fmt_tag
    functionSourceFile: /src/symphonia/symphonia-play/src/ui.rs
    functionUses: 2
    functionsReached:
    - FormattedTag::new
    - to_string
    linkageType: ''
    returnType: FormattedTag
    signature: 'fn fmt_tag(tag: &Tag) -> FormattedTag<''_>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-play/src/output.rs:128,1
    - Dst: Option::init
      Src: /src/symphonia/symphonia-play/src/output.rs:129,1
    - Dst: Option::set_len
      Src: /src/symphonia/symphonia-play/src/output.rs:130,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-play/src/output.rs:130,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-play/src/output.rs:132,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/output.rs:136,1
    - Dst: zip
      Src: /src/symphonia/symphonia-play/src/output.rs:136,1
    - Dst: Option::get_mut
      Src: /src/symphonia/symphonia-play/src/output.rs:136,1
    - Dst: map_positioned
      Src: /src/symphonia/symphonia-play/src/output.rs:137,1
    - Dst: zip
      Src: /src/symphonia/symphonia-play/src/output.rs:141,1
    - Dst: Option::get_mut
      Src: /src/symphonia/symphonia-play/src/output.rs:141,1
    - Dst: map_discrete
      Src: /src/symphonia/symphonia-play/src/output.rs:142,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/output.rs:146,1
    - Dst: zip
      Src: /src/symphonia/symphonia-play/src/output.rs:146,1
    - Dst: Option::get_mut
      Src: /src/symphonia/symphonia-play/src/output.rs:146,1
    - Dst: map_positioned
      Src: /src/symphonia/symphonia-play/src/output.rs:148,1
    - Dst: map_discrete
      Src: /src/symphonia/symphonia-play/src/output.rs:149,1
    - Dst: Some
      Src: /src/symphonia/symphonia-play/src/output.rs:166,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 68
    argCount: 1
    argNames:
    - channels
    argTypes:
    - '&Channels'
    constantsTouched: []
    func_position:
      end: 167
      start: 127
    functionDepth: 8
    functionLinenumber: 127
    functionLinenumberEnd: 167
    functionName: pulseaudio::map_channels_to_pa_channelmap
    functionSourceFile: /src/symphonia/symphonia-play/src/output.rs
    functionUses: 0
    functionsReached:
    - map_discrete
    - Option::get_mut
    - zip
    - Some
    - iter
    - Option::set_len
    - Option::init
    - map_positioned
    - Option::count
    - Default::default
    linkageType: ''
    returnType: Option
    signature: 'fn map_channels_to_pa_channelmap(channels: &Channels) -> Option<pulse::channelmap::Map>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-play/src/output.rs:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - position
    - is_mono
    argTypes:
    - Position
    - bool
    constantsTouched: []
    func_position:
      end: 198
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 198
    functionName: pulseaudio::map_positioned
    functionSourceFile: /src/symphonia/symphonia-play/src/output.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'fn map_positioned(position: Position, is_mono: bool) -> Option<pulse::channelmap::Position>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-play/src/output.rs:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - index
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 242
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 242
    functionName: pulseaudio::map_discrete
    functionSourceFile: /src/symphonia/symphonia-play/src/output.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'fn map_discrete(index: u16) -> Option<pulse::channelmap::Position>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cpal::CpalAudioOutput::try_open
      Src: /src/symphonia/symphonia-play/src/output.rs:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - spec
    - duration
    argTypes:
    - '&AudioSpec'
    - Duration
    constantsTouched: []
    func_position:
      end: 449
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 449
    functionName: try_open
    functionSourceFile: /src/symphonia/symphonia-play/src/output.rs
    functionUses: 3
    functionsReached:
    - cpal::CpalAudioOutput::try_open
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_open(spec: &AudioSpec, duration: Duration) -> Result<Box<dyn
      AudioOutput>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: env::args
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:16,1
    - Dst: collect
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:16,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:20,1
    - Dst: File::open
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:20,1
    - Dst: Path::new
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:20,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:20,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:23,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:23,1
    - Dst: Hint::new
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:27,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:30,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:31,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:32,1
    - Dst: symphonia::default::get_probe
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:36,1
    - Dst: '&''static Probe::probe'
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:36,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:36,1
    - Dst: bool::default_track
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:39,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:39,1
    - Dst: symphonia::default::get_codecs
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:42,1
    - Dst: '&''static CodecRegistry::make_audio_decoder'
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:42,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:43,1
    - Dst: unwrap
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:43,1
    - Dst: audio
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:43,1
    - Dst: unwrap
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:43,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:42,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:49,1
    - Dst: bool::next_packet
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:53,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:53,1
    - Dst: Option::decode
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:60,1
    - Dst: Result::resize
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:71,1
    - Dst: Result::samples_interleaved
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:71,1
    - Dst: Result::copy_to_slice_interleaved
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:75,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia/examples/basic-interleaved.rs:78,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 75
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 85
      start: 14
    functionDepth: 10
    functionLinenumber: 14
    functionLinenumberEnd: 85
    functionName: main
    functionSourceFile: /src/symphonia/symphonia/examples/basic-interleaved.rs
    functionUses: 0
    functionsReached:
    - File::open
    - '&''static Probe::probe'
    - '&''static CodecRegistry::make_audio_decoder'
    - MediaSourceStream::new
    - Result::len
    - bool::next_packet
    - symphonia::default::get_probe
    - as_ref
    - Path::new
    - collect
    - bool::default_track
    - unwrap
    - Option::decode
    - env::args
    - Result::copy_to_slice_interleaved
    - Hint::new
    - symphonia::default::get_codecs
    - Result::unwrap
    - Default::default
    - Result::resize
    - audio
    - Option::unwrap
    - Box::new
    - Result::samples_interleaved
    linkageType: ''
    returnType: void
    signature: fn main()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_one::<PathBuf>
      Src: /src/symphonia/symphonia-play/src/main.rs:151,1
    - Dst: expect
      Src: /src/symphonia/symphonia-play/src/main.rs:151,1
    - Dst: Hint::new
      Src: /src/symphonia/symphonia-play/src/main.rs:154,1
    - Dst: String::as_os_str
      Src: /src/symphonia/symphonia-play/src/main.rs:157,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-play/src/main.rs:158,1
    - Dst: ReadOnlySource::new
      Src: /src/symphonia/symphonia-play/src/main.rs:158,1
    - Dst: std::io::stdin
      Src: /src/symphonia/symphonia-play/src/main.rs:158,1
    - Dst: String::extension
      Src: /src/symphonia/symphonia-play/src/main.rs:164,1
    - Dst: '&mut Self::to_str'
      Src: /src/symphonia/symphonia-play/src/main.rs:165,1
    - Dst: Self::with_extension
      Src: /src/symphonia/symphonia-play/src/main.rs:166,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-play/src/main.rs:170,1
    - Dst: File::open
      Src: /src/symphonia/symphonia-play/src/main.rs:170,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-play/src/main.rs:174,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-play/src/main.rs:174,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-play/src/main.rs:177,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-play/src/main.rs:180,1
    - Dst: symphonia::default::get_probe
      Src: /src/symphonia/symphonia-play/src/main.rs:183,1
    - Dst: '&''static Probe::probe'
      Src: /src/symphonia/symphonia-play/src/main.rs:183,1
    - Dst: '&ArgMatches::get_flag'
      Src: /src/symphonia/symphonia-play/src/main.rs:186,1
    - Dst: String::file_name
      Src: /src/symphonia/symphonia-play/src/main.rs:187,1
    - Dst: OsStr::new
      Src: /src/symphonia/symphonia-play/src/main.rs:189,1
    - Dst: dump_visuals
      Src: /src/symphonia/symphonia-play/src/main.rs:192,1
    - Dst: get_one::<usize>
      Src: /src/symphonia/symphonia-play/src/main.rs:196,1
    - Dst: copied
      Src: /src/symphonia/symphonia-play/src/main.rs:196,1
    - Dst: AudioDecoderOptions::default
      Src: /src/symphonia/symphonia-play/src/main.rs:198,1
    - Dst: Self::gapless
      Src: /src/symphonia/symphonia-play/src/main.rs:198,1
    - Dst: '&ArgMatches::get_flag'
      Src: /src/symphonia/symphonia-play/src/main.rs:198,1
    - Dst: '&ArgMatches::get_flag'
      Src: /src/symphonia/symphonia-play/src/main.rs:201,1
    - Dst: ui::print_format
      Src: /src/symphonia/symphonia-play/src/main.rs:203,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:204,1
    - Dst: '&ArgMatches::get_flag'
      Src: /src/symphonia/symphonia-play/src/main.rs:206,1
    - Dst: Self::verify
      Src: /src/symphonia/symphonia-play/src/main.rs:208,1
    - Dst: decode_only
      Src: /src/symphonia/symphonia-play/src/main.rs:209,1
    - Dst: '&ArgMatches::get_flag'
      Src: /src/symphonia/symphonia-play/src/main.rs:211,1
    - Dst: Self::verify
      Src: /src/symphonia/symphonia-play/src/main.rs:213,1
    - Dst: decode_only
      Src: /src/symphonia/symphonia-play/src/main.rs:215,1
    - Dst: ui::print_format
      Src: /src/symphonia/symphonia-play/src/main.rs:219,1
    - Dst: '&ArgMatches::contains_id'
      Src: /src/symphonia/symphonia-play/src/main.rs:222,1
    - Dst: get_one::<f64>
      Src: /src/symphonia/symphonia-play/src/main.rs:223,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-play/src/main.rs:223,1
    - Dst: Time::try_from_secs_f64
      Src: /src/symphonia/symphonia-play/src/main.rs:224,1
    - Dst: map
      Src: /src/symphonia/symphonia-play/src/main.rs:223,1
    - Dst: get_one::<Timestamp>
      Src: /src/symphonia/symphonia-play/src/main.rs:228,1
    - Dst: map
      Src: /src/symphonia/symphonia-play/src/main.rs:228,1
    - Dst: SeekPosition::Timestamp
      Src: /src/symphonia/symphonia-play/src/main.rs:228,1
    - Dst: Self::verify
      Src: /src/symphonia/symphonia-play/src/main.rs:233,1
    - Dst: '&ArgMatches::get_flag'
      Src: /src/symphonia/symphonia-play/src/main.rs:233,1
    - Dst: '&ArgMatches::get_flag'
      Src: /src/symphonia/symphonia-play/src/main.rs:236,1
    - Dst: play
      Src: /src/symphonia/symphonia-play/src/main.rs:240,1
    - Dst: Err
      Src: /src/symphonia/symphonia-play/src/main.rs:246,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 111
    argCount: 1
    argNames:
    - args
    argTypes:
    - '&ArgMatches'
    constantsTouched: []
    func_position:
      end: 249
      start: 150
    functionDepth: 10
    functionLinenumber: 150
    functionLinenumberEnd: 249
    functionName: run
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 0
    functionsReached:
    - File::open
    - '&''static Probe::probe'
    - String::file_name
    - dump_visuals
    - MediaSourceStream::new
    - String::extension
    - Ok
    - std::io::stdin
    - expect
    - symphonia::default::get_probe
    - get_one::<usize>
    - get_one::<Timestamp>
    - map
    - SeekPosition::Timestamp
    - '&ArgMatches::get_flag'
    - String::as_os_str
    - AudioDecoderOptions::default
    - decode_only
    - '&ArgMatches::contains_id'
    - Hint::new
    - Err
    - '&mut Self::to_str'
    - get_one::<f64>
    - and_then
    - Time::try_from_secs_f64
    - Default::default
    - copied
    - get_one::<PathBuf>
    - Self::gapless
    - Self::verify
    - play
    - ReadOnlySource::new
    - Box::new
    - Self::with_extension
    - OsStr::new
    - ui::print_format
    linkageType: ''
    returnType: Result
    signature: 'fn run(args: &ArgMatches) -> Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: and_then
      Src: /src/symphonia/symphonia-play/src/main.rs:261,1
    - Dst: Result::tracks
      Src: /src/symphonia/symphonia-play/src/main.rs:263,1
    - Dst: '&[Track]::get'
      Src: /src/symphonia/symphonia-play/src/main.rs:263,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-play/src/main.rs:261,1
    - Dst: Result::default_track
      Src: /src/symphonia/symphonia-play/src/main.rs:264,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:269,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-play/src/main.rs:274,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:276,1
    - Dst: symphonia::default::get_codecs
      Src: /src/symphonia/symphonia-play/src/main.rs:281,1
    - Dst: '&''static CodecRegistry::make_audio_decoder'
      Src: /src/symphonia/symphonia-play/src/main.rs:281,1
    - Dst: Result::next_packet
      Src: /src/symphonia/symphonia-play/src/main.rs:287,1
    - Dst: Option::decode
      Src: /src/symphonia/symphonia-play/src/main.rs:294,1
    - Dst: Err
      Src: /src/symphonia/symphonia-play/src/main.rs:297,1
    - Dst: do_verification
      Src: /src/symphonia/symphonia-play/src/main.rs:304,1
    - Dst: Option::finalize
      Src: /src/symphonia/symphonia-play/src/main.rs:304,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 2
    argNames:
    - reader
    - opts
    argTypes:
    - Box<dyn FormatReader>
    - DecodeOptions
    constantsTouched: []
    func_position:
      end: 305
      start: 258
    functionDepth: 12
    functionLinenumber: 258
    functionLinenumberEnd: 305
    functionName: decode_only
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 1
    functionsReached:
    - '&''static CodecRegistry::make_audio_decoder'
    - Option::finalize
    - do_verification
    - Result::tracks
    - or_else
    - Result::default_track
    - symphonia::default::get_codecs
    - as_ref
    - Err
    - and_then
    - '&[Track]::get'
    - Result::next_packet
    - Ok
    - Option::decode
    linkageType: ''
    returnType: Result
    signature: 'fn decode_only(mut reader: Box<dyn FormatReader>, opts: DecodeOptions)
      -> Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: and_then
      Src: /src/symphonia/symphonia-play/src/main.rs:328,1
    - Dst: Result::tracks
      Src: /src/symphonia/symphonia-play/src/main.rs:330,1
    - Dst: '&[Track]::get'
      Src: /src/symphonia/symphonia-play/src/main.rs:330,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-play/src/main.rs:328,1
    - Dst: Result::default_track
      Src: /src/symphonia/symphonia-play/src/main.rs:331,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:336,1
    - Dst: Some
      Src: /src/symphonia/symphonia-play/src/main.rs:343,1
    - Dst: Result::seek
      Src: /src/symphonia/symphonia-play/src/main.rs:349,1
    - Dst: do_reset
      Src: /src/symphonia/symphonia-play/src/main.rs:353,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:355,1
    - Dst: play_track
      Src: /src/symphonia/symphonia-play/src/main.rs:382,1
    - Dst: do_reset
      Src: /src/symphonia/symphonia-play/src/main.rs:385,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:387,1
    - Dst: None::as_mut
      Src: /src/symphonia/symphonia-play/src/main.rs:396,1
    - Dst: None::flush
      Src: /src/symphonia/symphonia-play/src/main.rs:397,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 63
    argCount: 2
    argNames:
    - reader
    - opts
    argTypes:
    - Box<dyn FormatReader>
    - PlayOptions
    constantsTouched: []
    func_position:
      end: 401
      start: 325
    functionDepth: 12
    functionLinenumber: 325
    functionLinenumberEnd: 401
    functionName: play
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 1
    functionsReached:
    - do_reset
    - play_track
    - None::as_mut
    - Result::tracks
    - or_else
    - Result::default_track
    - Result::seek
    - None::flush
    - Some
    - and_then
    - '&[Track]::get'
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn play(mut reader: Box<dyn FormatReader>, opts: PlayOptions) -> Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::tracks
      Src: /src/symphonia/symphonia-play/src/main.rs:409,1
    - Dst: '&[Track]::iter'
      Src: /src/symphonia/symphonia-play/src/main.rs:409,1
    - Dst: find
      Src: /src/symphonia/symphonia-play/src/main.rs:409,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:411,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-play/src/main.rs:416,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:418,1
    - Dst: symphonia::default::get_codecs
      Src: /src/symphonia/symphonia-play/src/main.rs:423,1
    - Dst: '&''static CodecRegistry::make_audio_decoder'
      Src: /src/symphonia/symphonia-play/src/main.rs:423,1
    - Dst: Result::next_packet
      Src: /src/symphonia/symphonia-play/src/main.rs:430,1
    - Dst: Result::metadata
      Src: /src/symphonia/symphonia-play/src/main.rs:437,1
    - Dst: Metadata::is_latest
      Src: /src/symphonia/symphonia-play/src/main.rs:437,1
    - Dst: Result::metadata
      Src: /src/symphonia/symphonia-play/src/main.rs:438,1
    - Dst: Metadata::pop
      Src: /src/symphonia/symphonia-play/src/main.rs:438,1
    - Dst: Result::metadata
      Src: /src/symphonia/symphonia-play/src/main.rs:440,1
    - Dst: Metadata::current
      Src: /src/symphonia/symphonia-play/src/main.rs:440,1
    - Dst: ui::print_update
      Src: /src/symphonia/symphonia-play/src/main.rs:441,1
    - Dst: Option::decode
      Src: /src/symphonia/symphonia-play/src/main.rs:446,1
    - Dst: '&mut Option<Box<dyn output::AudioOutput>>::is_none'
      Src: /src/symphonia/symphonia-play/src/main.rs:449,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-play/src/main.rs:452,1
    - Dst: GenericAudioBufferRef::capacity
      Src: /src/symphonia/symphonia-play/src/main.rs:452,1
    - Dst: '&mut Option<Box<dyn output::AudioOutput>>::replace'
      Src: /src/symphonia/symphonia-play/src/main.rs:455,1
    - Dst: output::try_open
      Src: /src/symphonia/symphonia-play/src/main.rs:455,1
    - Dst: GenericAudioBufferRef::spec
      Src: /src/symphonia/symphonia-play/src/main.rs:455,1
    - Dst: Result::map_err
      Src: /src/symphonia/symphonia-play/src/main.rs:455,1
    - Dst: Error::IoError
      Src: /src/symphonia/symphonia-play/src/main.rs:456,1
    - Dst: std::io::Error::other
      Src: /src/symphonia/symphonia-play/src/main.rs:456,1
    - Dst: ui::print_progress
      Src: /src/symphonia/symphonia-play/src/main.rs:472,1
    - Dst: '&mut Option<Box<dyn output::AudioOutput>>::write'
      Src: /src/symphonia/symphonia-play/src/main.rs:476,1
    - Dst: map_err
      Src: /src/symphonia/symphonia-play/src/main.rs:476,1
    - Dst: Error::IoError
      Src: /src/symphonia/symphonia-play/src/main.rs:477,1
    - Dst: std::io::Error::other
      Src: /src/symphonia/symphonia-play/src/main.rs:477,1
    - Dst: Err
      Src: /src/symphonia/symphonia-play/src/main.rs:487,1
    - Dst: do_verification
      Src: /src/symphonia/symphonia-play/src/main.rs:498,1
    - Dst: Option::finalize
      Src: /src/symphonia/symphonia-play/src/main.rs:498,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 118
    argCount: 3
    argNames:
    - reader
    - audio_output
    - opts
    argTypes:
    - '&mut Box<dyn FormatReader>'
    - '&mut Option<Box<dyn output::AudioOutput>>'
    - PlayTrackOptions
    constantsTouched: []
    func_position:
      end: 499
      start: 403
    functionDepth: 11
    functionLinenumber: 403
    functionLinenumberEnd: 499
    functionName: play_track
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 1
    functionsReached:
    - '&''static CodecRegistry::make_audio_decoder'
    - Result::metadata
    - find
    - GenericAudioBufferRef::capacity
    - ui::print_update
    - Result::next_packet
    - Ok
    - '&mut Option<Box<dyn output::AudioOutput>>::replace'
    - Error::IoError
    - std::io::Error::other
    - Result::tracks
    - output::try_open
    - as_ref
    - Metadata::current
    - Option::decode
    - Metadata::is_latest
    - do_verification
    - symphonia::default::get_codecs
    - ui::print_progress
    - '&mut Option<Box<dyn output::AudioOutput>>::write'
    - Metadata::pop
    - '&[Track]::iter'
    - map_err
    - Result::map_err
    - Option::finalize
    - GenericAudioBufferRef::spec
    - '&mut Option<Box<dyn output::AudioOutput>>::is_none'
    - Err
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'fn play_track(reader: &mut Box<dyn FormatReader>,audio_output: &mut
      Option<Box<dyn output::AudioOutput>>,opts: PlayTrackOptions,) -> Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ui::print_blank
      Src: /src/symphonia/symphonia-play/src/main.rs:505,1
    - Dst: ui::print_tracks
      Src: /src/symphonia/symphonia-play/src/main.rs:506,1
    - Dst: Result::tracks
      Src: /src/symphonia/symphonia-play/src/main.rs:506,1
    - Dst: Result::default_track
      Src: /src/symphonia/symphonia-play/src/main.rs:510,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-play/src/main.rs:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut Box<dyn FormatReader>'
    constantsTouched: []
    func_position:
      end: 511
      start: 501
    functionDepth: 12
    functionLinenumber: 501
    functionLinenumberEnd: 511
    functionName: do_reset
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 1
    functionsReached:
    - ui::print_tracks
    - Result::tracks
    - Result::default_track
    - Option::map
    - ui::print_blank
    linkageType: ''
    returnType: Option
    signature: 'fn do_reset(reader: &mut Box<dyn FormatReader>) -> Option<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:519,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-play/src/main.rs:519,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-play/src/main.rs:522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - finalization
    argTypes:
    - FinalizeResult
    constantsTouched: []
    func_position:
      end: 524
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 524
    functionName: do_verification
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 2
    functionsReached:
    - Ok
    - i32::from
    linkageType: ''
    returnType: Result
    signature: 'fn do_verification(finalization: FinalizeResult) -> Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bool::metadata
      Src: /src/symphonia/symphonia-play/src/main.rs:527,1
    - Dst: Metadata::current
      Src: /src/symphonia/symphonia-play/src/main.rs:527,1
    - Dst: iter
      Src: /src/symphonia/symphonia-play/src/main.rs:528,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-play/src/main.rs:528,1
    - Dst: dump_visual
      Src: /src/symphonia/symphonia-play/src/main.rs:529,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - format
    - file_name
    argTypes:
    - '&mut Box<dyn FormatReader>'
    - '&OsStr'
    constantsTouched: []
    func_position:
      end: 532
      start: 526
    functionDepth: 11
    functionLinenumber: 526
    functionLinenumberEnd: 532
    functionName: dump_visuals
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 1
    functionsReached:
    - bool::metadata
    - iter
    - Metadata::current
    - dump_visual
    - enumerate
    linkageType: ''
    returnType: void
    signature: 'fn dump_visuals(format: &mut Box<dyn FormatReader>, file_name: &OsStr)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-play/src/main.rs:535,1
    - Dst: map
      Src: /src/symphonia/symphonia-play/src/main.rs:535,1
    - Dst: to_lowercase
      Src: /src/symphonia/symphonia-play/src/main.rs:535,1
    - Dst: as_deref
      Src: /src/symphonia/symphonia-play/src/main.rs:535,1
    - Dst: OsString::from
      Src: /src/symphonia/symphonia-play/src/main.rs:543,1
    - Dst: EbmlError::push
      Src: /src/symphonia/symphonia-play/src/main.rs:544,1
    - Dst: File::create
      Src: /src/symphonia/symphonia-play/src/main.rs:546,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-play/src/main.rs:546,1
    - Dst: String::write_all
      Src: /src/symphonia/symphonia-play/src/main.rs:546,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 3
    argNames:
    - visual
    - file_name
    - index
    argTypes:
    - '&Visual'
    - '&OsStr'
    - usize
    constantsTouched: []
    func_position:
      end: 550
      start: 534
    functionDepth: 9
    functionLinenumber: 534
    functionLinenumberEnd: 550
    functionName: dump_visual
    functionSourceFile: /src/symphonia/symphonia-play/src/main.rs
    functionUses: 1
    functionsReached:
    - EbmlError::push
    - as_ref
    - String::write_all
    - as_deref
    - map
    - File::create
    - and_then
    - OsString::from
    - to_lowercase
    linkageType: ''
    returnType: void
    signature: 'fn dump_visual(visual: &Visual, file_name: &OsStr, index: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 313
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionName: MkvElementInfo::element_type
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self::ElementType
    signature: fn element_type(&self) -> Self::ElementType
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 317
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionName: MkvElementInfo::data_type
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EbmlDataType
    signature: fn data_type(&self) -> EbmlDataType
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 321
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionName: MkvElementInfo::min_depth
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: fn min_depth(&self) -> u8
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: MkvElementInfo::is_global
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_global(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 329
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionName: MkvElementInfo::is_recursive
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_recursive(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 333
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 333
    functionName: MkvElementInfo::allow_unknown_size
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn allow_unknown_size(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 337
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 337
    functionName: MkvElementInfo::parent_id
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: fn parent_id(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/schema.rs:640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - id
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 641
      start: 639
    functionDepth: 1
    functionLinenumber: 639
    functionLinenumberEnd: 641
    functionName: MkvSchema::get_element_info
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/schema.rs
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: Option
    signature: 'fn get_element_info(&self, id: u32) -> Option<&Self::ElementInfo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlError::IoError
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - err
    argTypes:
    - std::io::Error
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: EbmlError::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlError::IoError
    linkageType: ''
    returnType: EbmlError
    signature: 'fn from(err: std::io::Error) -> EbmlError'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: EbmlElementHeader::clone
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn clone(&self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_element_id
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:159,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:162,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:162,1
    - Dst: read_element_data_size
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:165,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:168,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:170,1
    - Dst: '&S::get_element_info'
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:174,1
    - Dst: Option::copied
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - reader
    - depth
    - schema
    argTypes:
    - '&mut R'
    - u8
    - '&S'
    constantsTouched: []
    func_position:
      end: 178
      start: 157
    functionDepth: 14
    functionLinenumber: 157
    functionLinenumberEnd: 178
    functionName: EbmlElementHeader::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - Option::copied
    - u64::from
    - Result::pos
    - read_element_data_size
    - read_element_id
    - '&S::get_element_info'
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read<R: ReadBytes>(reader: &mut R, depth: u8, schema:
      &S) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: EbmlElementHeader::id
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: pub(crate) fn id(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: EbmlElementHeader::pos
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: pub(crate) fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlElementHeader::size
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:192,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 9
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: EbmlElementHeader::end
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlElementHeader::size
    - Option::map
    linkageType: ''
    returnType: Option
    signature: pub(crate) fn end(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:198,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 8
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: EbmlElementHeader::size
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - u64::from
    - map
    linkageType: ''
    returnType: Option
    signature: pub(crate) fn size(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: EbmlElementHeader::data_pos
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - u64::from
    linkageType: ''
    returnType: u64
    signature: pub(crate) fn data_pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: EbmlElementHeader::data_size
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: pub(crate) fn data_size(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 215
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionName: EbmlElementHeader::depth
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: pub(crate) fn depth(&self) -> u8
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:219,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:219,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 220
      start: 218
    functionDepth: 9
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionName: EbmlElementHeader::element_type
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - unwrap_or_default
    - map
    - Result::element_type
    linkageType: ''
    returnType: ''
    signature: pub(crate) fn element_type(&self) -> <S::ElementInfo as EbmlElementInfo>::ElementType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlElementHeader::is_valid_at
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - parent_id
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: EbmlElementHeader::is_valid
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlElementHeader::is_valid_at
    linkageType: ''
    returnType: Option
    signature: 'pub(crate) fn is_valid(&self, parent_id: u32) -> Option<bool>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::is_global
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:238,1
    - Dst: Result::is_recursive
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:244,1
    - Dst: Result::parent_id
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:246,1
    - Dst: Result::parent_id
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:250,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:254,1
    - Dst: Result::min_depth
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:254,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - depth
    - parent_id
    argTypes:
    - u8
    - u32
    constantsTouched: []
    func_position:
      end: 258
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 258
    functionName: EbmlElementHeader::is_valid_at
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - Result::min_depth
    - Result::is_recursive
    - Some
    - Result::is_global
    - Result::parent_id
    linkageType: ''
    returnType: Option
    signature: 'pub(crate) fn is_valid_at(&self, depth: u8, parent_id: u32) -> Option<bool>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - reader
    - schema
    - len
    argTypes:
    - R
    - S
    - Option<u64>
    constantsTouched: []
    func_position:
      end: 296
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 296
    functionName: EbmlIterator::new
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - Vec::with_capacity
    linkageType: ''
    returnType: Self
    signature: 'pub(crate) fn new(reader: R, schema: S, len: Option<u64>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 301
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionName: EbmlIterator::schema
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&S'
    signature: pub(crate) fn schema(&self) -> &S
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 306
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 306
    functionName: EbmlIterator::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: R
    signature: pub(crate) fn into_inner(self) -> R
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 311
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 311
    functionName: EbmlIterator::pos
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - pos
    linkageType: ''
    returnType: u64
    signature: pub(crate) fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: last
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 319
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 319
    functionName: EbmlIterator::parent
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - last
    linkageType: ''
    returnType: Option
    signature: pub(crate) fn parent(&self) -> Option<&EbmlElementHeader<S>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 325
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionName: EbmlIterator::current
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: pub(crate) fn current(&self) -> Option<&EbmlElementHeader<S>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 332
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 332
    functionName: EbmlIterator::depth
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - len
    linkageType: ''
    returnType: u8
    signature: pub(crate) fn depth(&self) -> u8
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:337,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:338,1
    - Dst: take
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:341,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:342,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:343,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 349
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 349
    functionName: EbmlIterator::push_element
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - len
    - take
    - Err
    - Ok
    - push
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn push_element(&mut self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pop
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:353,1
    - Dst: replace
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:354,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:355,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 361
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 361
    functionName: EbmlIterator::pop_element
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 2
    functionsReached:
    - pop
    - replace
    - Ok
    - Err
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn pop_element(&mut self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:370,1
    - Dst: rev
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:370,1
    - Dst: position
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:370,1
    - Dst: element_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:370,1
    - Dst: EbmlIterator::pop_element
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:376,1
    - Dst: Result::expect
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:376,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:378,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:382,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - element
    argTypes:
    - <S::ElementInfo as EbmlElementInfo>::ElementType
    constantsTouched: []
    func_position:
      end: 385
      start: 365
    functionDepth: 11
    functionLinenumber: 365
    functionLinenumberEnd: 385
    functionName: EbmlIterator::pop_elements_upto
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - rev
    - EbmlIterator::pop_element
    - element_type
    - iter
    - Result::expect
    - Err
    - Ok
    - position
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn pop_elements_upto(&mut self,element: <S::ElementInfo
      as EbmlElementInfo>::ElementType,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clone
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:390,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 394
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 394
    functionName: EbmlIterator::save_state
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - pos
    - clone
    linkageType: ''
    returnType: EbmlIteratorState
    signature: pub(crate) fn save_state(&self) -> EbmlIteratorState<S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: seek
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:401,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:401,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - state
    argTypes:
    - EbmlIteratorState<S>
    constantsTouched: []
    func_position:
      end: 405
      start: 397
    functionDepth: 12
    functionLinenumber: 397
    functionLinenumberEnd: 405
    functionName: EbmlIterator::restore_state
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Ok
    - SeekFrom::Start
    - seek
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn restore_state(&mut self, state: EbmlIteratorState<S>)
      -> Result<()>whereR: MediaSource,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::parent
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:416,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:416,1
    - Dst: Option::id
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:418,1
    - Dst: Option::data_pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:418,1
    - Dst: Option::size
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:418,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:416,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:431,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:437,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:437,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:440,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:440,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 39
    argCount: 1
    argNames:
    - offset
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 446
      start: 410
    functionDepth: 9
    functionLinenumber: 410
    functionLinenumberEnd: 446
    functionName: EbmlIterator::seek_to_child
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Option::size
    - Option::unwrap_or
    - Ok
    - Option::map
    - Option::data_pos
    - SeekFrom::Start
    - seek
    - Option::id
    - Err
    - checked_add
    - EbmlIterator::parent
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn seek_to_child(&mut self, offset: u64) -> Result<()>whereR:
      MediaSource,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:452,1
    - Dst: EbmlIterator::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 454
      start: 451
    functionDepth: 11
    functionLinenumber: 451
    functionLinenumberEnd: 454
    functionName: EbmlIterator::next_element
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::next_header
    - EbmlIterator::read_master_element
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn next_element<E: EbmlElement<S>>(&mut self) -> Result<E>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:462,1
    - Dst: end
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:463,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:466,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:470,1
    - Dst: last
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:483,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:483,1
    - Dst: Option::end
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:483,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:483,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:488,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:492,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:497,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:502,1
    - Dst: EbmlIterator::depth
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:507,1
    - Dst: EbmlElementHeader::read
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:510,1
    - Dst: Result::is_valid
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:524,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:524,1
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:532,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:532,1
    - Dst: is_none
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:537,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:538,1
    - Dst: rev
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:538,1
    - Dst: skip
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:538,1
    - Dst: Result::is_valid_at
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:539,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:539,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:542,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:552,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:557,1
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:563,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:564,1
    - Dst: Result::end
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:569,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:574,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:575,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:581,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:582,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:582,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 149
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 583
      start: 459
    functionDepth: 10
    functionLinenumber: 459
    functionLinenumberEnd: 583
    functionName: EbmlIterator::next_header
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - skip
    - Option::unwrap_or
    - Result::pos
    - pos
    - take
    - iter
    - Result::end
    - Ok
    - end
    - rev
    - as_ref
    - map
    - seek_buffered
    - Result::is_valid
    - Result::is_valid_at
    - last
    - Some
    - unwrap_or
    - EbmlElementHeader::read
    - Option::end
    - EbmlIterator::depth
    - Err
    - ignore_bytes
    - is_none
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn next_header(&mut self) -> Result<Option<&EbmlElementHeader<S>>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:588,1
    - Dst: Result::data_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:592,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:592,1
    - Dst: EbmlIterator::push_element
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:595,1
    - Dst: E::read
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:596,1
    - Dst: EbmlIterator::pop_element
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:597,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:598,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:602,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:607,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 609
      start: 586
    functionDepth: 14
    functionLinenumber: 586
    functionLinenumberEnd: 609
    functionName: EbmlIterator::read_master_element
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - EbmlIterator::pop_element
    - Result::element_type
    - EbmlIterator::current_or_err
    - E::read
    - Result::data_type
    - EbmlIterator::push_element
    - Err
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_master_element<E: EbmlElement<S>>(&mut self) ->
      Result<E>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:613,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:616,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:617,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:618,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:620,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 621
      start: 612
    functionDepth: 13
    functionLinenumber: 612
    functionLinenumberEnd: 621
    functionName: EbmlIterator::skip_data
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::current_or_err
    - EbmlIterator::discard_current
    - Ok
    - ignore_bytes
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn skip_data(&mut self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:626,1
    - Dst: Result::data_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:629,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:630,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:632,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:635,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:636,1
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:640,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:641,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:642,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:642,1
    - Dst: u64::from_be_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:642,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:644,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:647,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:649,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 651
      start: 625
    functionDepth: 13
    functionLinenumber: 625
    functionLinenumberEnd: 651
    functionName: EbmlIterator::read_u64
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 2
    functionsReached:
    - EbmlIterator::current_or_err
    - Err
    - Some
    - u64::from_be_bytes
    - Result::data_type
    - read_buf_exact
    - EbmlIterator::discard_current
    - Ok
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_u64(&mut self) -> Result<Option<u64>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:658,1
    - Dst: EbmlIterator::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:658,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - default
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 659
      start: 657
    functionDepth: 14
    functionLinenumber: 657
    functionLinenumberEnd: 659
    functionName: EbmlIterator::read_u64_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Ok
    - unwrap_or
    - EbmlIterator::read_u64
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_u64_default(&mut self, default: u64) -> Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:666,1
    - Dst: EbmlIterator::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:666,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:666,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 667
      start: 665
    functionDepth: 14
    functionLinenumber: 665
    functionLinenumberEnd: 667
    functionName: EbmlIterator::read_u64_no_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Ok
    - unwrap_or_default
    - EbmlIterator::read_u64
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_u64_no_default(&mut self) -> Result<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:672,1
    - Dst: Result::data_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:675,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:676,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:678,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:682,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:683,1
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:687,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:688,1
    - Dst: symphonia_core::util::bits::sign_extend_leq64_to_i64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:690,1
    - Dst: u64::from_be_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:690,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:691,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:691,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:693,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:696,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:698,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 700
      start: 671
    functionDepth: 13
    functionLinenumber: 671
    functionLinenumberEnd: 700
    functionName: EbmlIterator::read_i64
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 3
    functionsReached:
    - symphonia_core::util::bits::sign_extend_leq64_to_i64
    - EbmlIterator::current_or_err
    - Err
    - u64::from_be_bytes
    - Some
    - Result::data_type
    - read_buf_exact
    - EbmlIterator::discard_current
    - Ok
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_i64(&mut self) -> Result<Option<i64>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:707,1
    - Dst: EbmlIterator::read_i64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:707,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:707,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - default
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 708
      start: 706
    functionDepth: 14
    functionLinenumber: 706
    functionLinenumberEnd: 708
    functionName: EbmlIterator::read_i64_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::read_i64
    - Ok
    - unwrap_or
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_i64_default(&mut self, default: i64) -> Result<i64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:715,1
    - Dst: EbmlIterator::read_i64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:715,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 716
      start: 714
    functionDepth: 14
    functionLinenumber: 714
    functionLinenumberEnd: 716
    functionName: EbmlIterator::read_i64_no_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::read_i64
    - Ok
    - unwrap_or_default
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_i64_no_default(&mut self) -> Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:721,1
    - Dst: Result::data_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:724,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:725,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:727,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:730,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:731,1
    - Dst: read_be_f32
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:734,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:735,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:736,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:736,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:736,1
    - Dst: read_be_f64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:739,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:740,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:741,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:741,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:743,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:746,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:748,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 750
      start: 720
    functionDepth: 14
    functionLinenumber: 720
    functionLinenumberEnd: 750
    functionName: EbmlIterator::read_f64
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 2
    functionsReached:
    - read_be_f32
    - EbmlIterator::current_or_err
    - Err
    - Some
    - f64::from
    - Result::data_type
    - EbmlIterator::discard_current
    - Ok
    - read_be_f64
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_f64(&mut self) -> Result<Option<f64>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:757,1
    - Dst: EbmlIterator::read_f64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:757,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - default
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 758
      start: 756
    functionDepth: 15
    functionLinenumber: 756
    functionLinenumberEnd: 758
    functionName: EbmlIterator::read_f64_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Ok
    - unwrap_or
    - EbmlIterator::read_f64
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_f64_default(&mut self, default: f64) -> Result<f64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:765,1
    - Dst: EbmlIterator::read_f64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:765,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 766
      start: 764
    functionDepth: 15
    functionLinenumber: 764
    functionLinenumberEnd: 766
    functionName: EbmlIterator::read_f64_no_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Ok
    - unwrap_or_default
    - EbmlIterator::read_f64
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_f64_no_default(&mut self) -> Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::read_i64
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 773
      start: 771
    functionDepth: 14
    functionLinenumber: 771
    functionLinenumberEnd: 773
    functionName: EbmlIterator::read_date
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 2
    functionsReached:
    - EbmlIterator::read_i64
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_date(&mut self) -> Result<Option<i64>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:780,1
    - Dst: EbmlIterator::read_date
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:780,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:780,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - default
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 781
      start: 779
    functionDepth: 15
    functionLinenumber: 779
    functionLinenumberEnd: 781
    functionName: EbmlIterator::read_date_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Ok
    - unwrap_or
    - EbmlIterator::read_date
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_date_default(&mut self, default: i64) -> Result<i64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:788,1
    - Dst: EbmlIterator::read_date
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:788,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:788,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 789
      start: 787
    functionDepth: 15
    functionLinenumber: 787
    functionLinenumberEnd: 789
    functionName: EbmlIterator::read_date_no_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - Ok
    - unwrap_or_default
    - EbmlIterator::read_date
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_date_no_default(&mut self) -> Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:794,1
    - Dst: Result::data_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:797,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:798,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:800,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:803,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:804,1
    - Dst: read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:807,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:808,1
    - Dst: '&''static [ProbeFormatData]::split'
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:809,1
    - Dst: next
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:809,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:809,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:810,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:810,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:810,1
    - Dst: into_owned
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:810,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:814,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:816,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 818
      start: 793
    functionDepth: 13
    functionLinenumber: 793
    functionLinenumberEnd: 818
    functionName: EbmlIterator::read_string
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 2
    functionsReached:
    - into_owned
    - next
    - EbmlIterator::current_or_err
    - read_boxed_slice_exact
    - Err
    - Some
    - '&''static [ProbeFormatData]::split'
    - Result::data_type
    - EbmlIterator::discard_current
    - Ok
    - String::from_utf8_lossy
    - unwrap_or
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_string(&mut self) -> Result<Option<String>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:825,1
    - Dst: EbmlIterator::read_string
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:825,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:825,1
    - Dst: Result::into
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:825,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - default
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 826
      start: 824
    functionDepth: 14
    functionLinenumber: 824
    functionLinenumberEnd: 826
    functionName: EbmlIterator::read_string_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::read_string
    - Ok
    - unwrap_or_else
    - Result::into
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_string_default(&mut self, default: &str) -> Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:833,1
    - Dst: EbmlIterator::read_string
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:833,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:833,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 834
      start: 832
    functionDepth: 14
    functionLinenumber: 832
    functionLinenumberEnd: 834
    functionName: EbmlIterator::read_string_no_default
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::read_string
    - Ok
    - unwrap_or_default
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_string_no_default(&mut self) -> Result<String>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:838,1
    - Dst: Result::data_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:841,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:842,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:844,1
    - Dst: read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:845,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:846,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:847,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:849,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:851,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 853
      start: 837
    functionDepth: 13
    functionLinenumber: 837
    functionLinenumberEnd: 853
    functionName: EbmlIterator::read_binary
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::discard_current
    - EbmlIterator::current_or_err
    - read_boxed_slice_exact
    - Result::data_type
    - Err
    - Ok
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_binary(&mut self) -> Result<Box<[u8]>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlIterator::current_or_err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:859,1
    - Dst: Result::data_type
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:862,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:863,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:865,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:866,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:867,1
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:869,1
    - Dst: EbmlIterator::discard_current
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:870,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:871,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:873,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:875,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 877
      start: 858
    functionDepth: 13
    functionLinenumber: 858
    functionLinenumberEnd: 877
    functionName: EbmlIterator::read_binary_into
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached:
    - EbmlIterator::discard_current
    - EbmlIterator::current_or_err
    - Ok
    - Result::data_type
    - Result::len
    - Err
    - read_buf_exact
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_binary_into(&mut self, buf: &mut [u8]) -> Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:882,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 883
      start: 881
    functionDepth: 0
    functionLinenumber: 881
    functionLinenumberEnd: 883
    functionName: EbmlIterator::current_or_err
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 8
    functionsReached:
    - as_ref
    - ok_or
    linkageType: ''
    returnType: Result
    signature: fn current_or_err(&self) -> Result<&EbmlElementHeader<S>>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 896
      start: 890
    functionDepth: 0
    functionLinenumber: 890
    functionLinenumberEnd: 896
    functionName: EbmlIterator::discard_current
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn discard_current(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:905,1
    - Dst: Result::leading_zeros
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:908,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:912,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:916,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:918,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:919,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:923,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut R'
    constantsTouched: []
    func_position:
      end: 924
      start: 903
    functionDepth: 13
    functionLinenumber: 903
    functionLinenumberEnd: 924
    functionName: read_element_id
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - Result::read_byte
    - Result::leading_zeros
    - Err
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn read_element_id<R: ReadBytes>(reader: &mut R) -> Result<(u32, u8)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_vint
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:928,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:933,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:936,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:939,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:939,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut R'
    constantsTouched: []
    func_position:
      end: 940
      start: 927
    functionDepth: 14
    functionLinenumber: 927
    functionLinenumberEnd: 940
    functionName: read_element_data_size
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - read_vint
    - Some
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn read_element_data_size<R: ReadBytes>(reader: &mut R) -> Result<Option<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:945,1
    - Dst: read_vint
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:945,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut R'
    constantsTouched: []
    func_position:
      end: 946
      start: 944
    functionDepth: 14
    functionLinenumber: 944
    functionLinenumberEnd: 946
    functionName: read_unsigned_vint
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 2
    functionsReached:
    - Ok
    - read_vint
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_unsigned_vint<R: ReadBytes>(reader: &mut R) ->
      Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_vint
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:950,1
    - Dst: i64::pow
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:952,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:952,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:953,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut R'
    constantsTouched: []
    func_position:
      end: 954
      start: 949
    functionDepth: 14
    functionLinenumber: 949
    functionLinenumberEnd: 954
    functionName: read_signed_vint
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 1
    functionsReached:
    - read_vint
    - i64::pow
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_signed_vint<R: ReadBytes>(reader: &mut R) -> Result<i64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:959,1
    - Dst: Result::leading_zeros
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:962,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:964,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:967,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:973,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:974,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/ebml.rs:977,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 1
    argNames:
    - reader
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 978
      start: 958
    functionDepth: 13
    functionLinenumber: 958
    functionLinenumberEnd: 978
    functionName: read_vint
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 3
    functionsReached:
    - u64::from
    - Result::read_byte
    - Result::leading_zeros
    - Err
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read_vint<R: ReadBytes>(mut reader: R) -> Result<(u64, u8)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 998
      start: 987
    functionDepth: 0
    functionLinenumber: 987
    functionLinenumberEnd: 998
    functionName: tests::verify_read_element_id
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_element_id()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1026
      start: 1001
    functionDepth: 0
    functionLinenumber: 1001
    functionLinenumberEnd: 1026
    functionName: tests::verify_read_unsigned_vint
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_unsigned_vint()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1029
    functionDepth: 0
    functionLinenumber: 1029
    functionLinenumberEnd: 1032
    functionName: tests::verify_read_signed_vint
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/ebml.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_signed_vint()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::is_seekable
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:77,1
    - Dst: Option::byte_len
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:77,1
    - Dst: EbmlIterator::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:84,1
    - Dst: next_element::<EbmlHeaderElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:87,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:90,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:94,1
    - Dst: element_type
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:95,1
    - Dst: data_pos
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:95,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:96,1
    - Dst: io::Result::push_element
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:100,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:106,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:107,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:111,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:112,1
    - Dst: read_master_element::<SeekHeadElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:114,1
    - Dst: into_vec
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:115,1
    - Dst: io::Result::schema
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:116,1
    - Dst: '&S::get_element_info'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:116,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:117,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:120,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:124,1
    - Dst: read_master_element::<TracksElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:124,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:127,1
    - Dst: read_master_element::<InfoElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:127,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:130,1
    - Dst: read_master_element::<CuesElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:130,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:134,1
    - Dst: read_master_element::<TagsElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:134,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:139,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:139,1
    - Dst: '&[Attachment]::is_some'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:147,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:150,1
    - Dst: read_master_element::<AttachmentsElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:150,1
    - Dst: Option::is_some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:154,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:157,1
    - Dst: read_master_element::<ChaptersElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:157,1
    - Dst: Self::retain
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:168,1
    - Dst: io::Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:168,1
    - Dst: Self::sort_by_key
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:170,1
    - Dst: io::Result::pop_elements_upto
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:174,1
    - Dst: io::Result::seek_to_child
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:177,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:180,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:181,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:190,1
    - Dst: read_master_element::<TracksElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:190,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:193,1
    - Dst: read_master_element::<InfoElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:193,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:197,1
    - Dst: read_master_element::<TagsElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:197,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:200,1
    - Dst: read_master_element::<CuesElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:200,1
    - Dst: '&[Attachment]::is_some'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:204,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:207,1
    - Dst: read_master_element::<AttachmentsElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:207,1
    - Dst: Option::is_some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:211,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:214,1
    - Dst: read_master_element::<ChaptersElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:214,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:222,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:222,1
    - Dst: None::as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:228,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:228,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:228,1
    - Dst: io::Result::seek_to_child
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:229,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:230,1
    - Dst: io::Result::push_element
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:234,1
    - Dst: Result::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:236,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:236,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:239,1
    - Dst: None::get_target_uids
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:241,1
    - Dst: Option::get_target_uids
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:244,1
    - Dst: '&[Attachment]::get_target_uids'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:247,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:251,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:255,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:255,1
    - Dst: any
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:255,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:255,1
    - Dst: Metadata::push
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:257,1
    - Dst: Option::into_metadata
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:257,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:261,1
    - Dst: Option::into_chapter_group
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:262,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:261,1
    - Dst: '&[Attachment]::map'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:266,1
    - Dst: '&[Attachment]::into_attachments'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:267,1
    - Dst: Option::unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:266,1
    - Dst: TimeBase::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:272,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:273,1
    - Dst: map_err
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:273,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:275,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:276,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:276,1
    - Dst: Self::reduce
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:272,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:280,1
    - Dst: HashMap::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:281,1
    - Dst: Option::scale
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:285,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:285,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:287,1
    - Dst: u32::try_from
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:292,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:292,1
    - Dst: Result::map_err
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:292,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:293,1
    - Dst: Track::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:301,1
    - Dst: with_time_base
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:303,1
    - Dst: with_language
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:306,1
    - Dst: with_language
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:309,1
    - Dst: with_flags
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:312,1
    - Dst: codecs::make_track_codec_params
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:314,1
    - Dst: with_codec_params
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:315,1
    - Dst: '&[Track]::push'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:318,1
    - Dst: Self::insert
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:319,1
    - Dst: MediaInfo::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:323,1
    - Dst: '&MediaInfo::with_time_base'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:325,1
    - Dst: '&MediaInfo::with_duration'
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:328,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:328,1
    - Dst: u64::get
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:328,1
    - Dst: u64::round
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:328,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:331,1
    - Dst: VecDeque::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:341,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 384
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 343
      start: 75
    functionDepth: 10
    functionLinenumber: 75
    functionLinenumberEnd: 343
    functionName: MkvReader::try_new
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - codecs::make_track_codec_params
    - Option::unwrap_or
    - symphonia_core::errors::unsupported_error
    - read_master_element::<TagsElement>
    - '&[Attachment]::into_attachments'
    - u32::try_from
    - Self::retain
    - Option::scale
    - unwrap_or_default
    - Self::insert
    - '&S::get_element_info'
    - Result::element_type
    - '&[Attachment]::map'
    - Result::ok_or
    - read_master_element::<SeekHeadElement>
    - Option::into_chapter_group
    - Self::push
    - read_master_element::<ChaptersElement>
    - Self::sort_by_key
    - None::ok_or
    - Result::pos
    - None::as_ref
    - next_element::<EbmlHeaderElement>
    - push
    - VecDeque::new
    - MediaInfo::new
    - None::get_target_uids
    - Self::expect
    - Option::get_target_uids
    - io::Result::pos
    - Option::is_some
    - io::Result::schema
    - u64::round
    - io::Result::pop_elements_upto
    - Vec::new
    - io::Result::seek_to_child
    - EbmlIterator::new
    - map_err
    - '&[Track]::push'
    - read_master_element::<TracksElement>
    - HashMap::new
    - Option::is_seekable
    - with_flags
    - with_codec_params
    - read_master_element::<CuesElement>
    - TimeBase::new
    - Option::unwrap_or_default
    - Track::new
    - Ok
    - io::Result::next_header
    - element_type
    - Metadata::push
    - map
    - Option::map
    - Option::into_metadata
    - io::Result::push_element
    - Some
    - '&[Attachment]::is_some'
    - read_master_element::<AttachmentsElement>
    - with_language
    - unwrap_or
    - '&MediaInfo::with_time_base'
    - Self::reduce
    - Option::byte_len
    - get
    - iter
    - is_some
    - Option::ok_or
    - '&[Attachment]::get_target_uids'
    - as_ref
    - NonZero::new
    - with_time_base
    - try_into
    - Error::Unsupported
    - '&MediaInfo::with_duration'
    - Default::default
    - into_vec
    - read_master_element::<InfoElement>
    - Result::map_err
    - any
    - u64::get
    - Error::DecodeError
    - Duration::new
    - data_pos
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mss: MediaSourceStream<''s>, opts: FormatOptions) ->
      Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:348,1
    - Dst: into_ts
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:349,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:349,1
    - Dst: into_dur
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:352,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:349,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:353,1
    - Dst: into_ts
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:356,1
    - Dst: pop_front
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:359,1
    - Dst: MkvReader::next_element
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:363,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:365,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:365,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:369,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 45
    argCount: 2
    argNames:
    - track_id
    - ts
    argTypes:
    - u32
    - Timestamp
    constantsTouched: []
    func_position:
      end: 370
      start: 345
    functionDepth: 10
    functionLinenumber: 345
    functionLinenumberEnd: 370
    functionName: MkvReader::seek_track_by_ts_forward
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - pop_front
    - Ok
    - MkvReader::next_element
    - into_ts
    - front
    - Error::SeekError
    - Err
    - checked_add
    - into_dur
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn seek_track_by_ts_forward(&mut self, track_id: u32, ts: Timestamp)
      -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: save_state
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:379,1
    - Dst: MkvReader::seek_track_by_ts
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:382,1
    - Dst: restore_state
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:385,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - id
    - tb
    - ts
    argTypes:
    - u32
    - TimeBase
    - Timestamp
    constantsTouched: []
    func_position:
      end: 391
      start: 372
    functionDepth: 11
    functionLinenumber: 372
    functionLinenumberEnd: 391
    functionName: MkvReader::seek_track_by_ts_atomic
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - restore_state
    - save_state
    - MkvReader::seek_track_by_ts
    - Err
    linkageType: ''
    returnType: Result
    signature: 'fn seek_track_by_ts_atomic(&mut self,id: u32,tb: TimeBase,ts: Timestamp,)
      -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SignedTrackTicks::from
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:404,1
    - Dst: Self::try_into_matroska_ticks
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:404,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:404,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:406,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:412,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:416,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:416,1
    - Dst: pop_elements_upto
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:426,1
    - Dst: seek_to_child
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:429,1
    - Dst: next_header
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:432,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:434,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:437,1
    - Dst: into_segment_ticks
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:442,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:443,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:448,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:448,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:448,1
    - Dst: push_element
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:451,1
    - Dst: seek_to_child
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:456,1
    - Dst: MkvReader::seek_track_by_ts_forward
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:461,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 83
    argCount: 3
    argNames:
    - id
    - tb
    - ts
    argTypes:
    - u32
    - TimeBase
    - Timestamp
    constantsTouched: []
    func_position:
      end: 462
      start: 393
    functionDepth: 10
    functionLinenumber: 393
    functionLinenumberEnd: 462
    functionName: MkvReader::seek_track_by_ts
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - pop_elements_upto
    - SignedTrackTicks::from
    - seek_to_child
    - expect
    - None::ok_or
    - Result::element_type
    - pos
    - Some
    - next_header
    - into_segment_ticks
    - push_element
    - Option::ok_or
    - Error::SeekError
    - MkvReader::seek_track_by_ts_forward
    - symphonia_core::errors::seek_error
    - Self::try_into_matroska_ticks
    linkageType: ''
    returnType: Result
    signature: 'fn seek_track_by_ts(&mut self, id: u32, tb: TimeBase, ts: Timestamp)
      -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: next_header
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:465,1
    - Dst: parent
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:469,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:472,1
    - Dst: Option::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:474,1
    - Dst: pop_element
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:482,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:485,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:489,1
    - Dst: Result::data_pos
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:489,1
    - Dst: push_element
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:492,1
    - Dst: as_mut
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:497,1
    - Dst: read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:499,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:499,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:506,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:509,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:516,1
    - Dst: read_binary
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:521,1
    - Dst: iter.read_master_element::<BlockGroupElement>
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:523,1
    - Dst: lacing::extract_frames
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:530,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:538,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:549,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 96
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 550
      start: 464
    functionDepth: 11
    functionLinenumber: 464
    functionLinenumberEnd: 550
    functionName: MkvReader::next_element
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - Result::data_pos
    - pop_element
    - lacing::extract_frames
    - Result::element_type
    - iter.read_master_element::<BlockGroupElement>
    - Option::element_type
    - read_u64
    - as_ref
    - next_header
    - parent
    - Some
    - push_element
    - map
    - read_binary
    - Ok
    - as_mut
    linkageType: ''
    returnType: Result
    signature: fn next_element(&mut self) -> Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:561,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:561,1
    - Dst: MkvReader::try_new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:561,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 562
      start: 554
    functionDepth: 10
    functionLinenumber: 554
    functionLinenumberEnd: 562
    functionName: MkvReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - MkvReader::try_new
    - Ok
    - Box::new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 571
      start: 564
    functionDepth: 1
    functionLinenumber: 564
    functionLinenumberEnd: 571
    functionName: MkvReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 577
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 577
    functionName: MkvReader::format_info
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 581
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionName: MkvReader::media_info
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 585
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 585
    functionName: MkvReader::attachments
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Attachment]'
    signature: fn attachments(&self) -> &[Attachment]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 589
      start: 587
    functionDepth: 0
    functionLinenumber: 587
    functionLinenumberEnd: 589
    functionName: MkvReader::chapters
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 593
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 593
    functionName: MkvReader::metadata
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:596,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:597,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:603,1
    - Dst: find
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:603,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:604,1
    - Dst: Result::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:606,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:606,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:607,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:608,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:612,1
    - Dst: MkvReader::seek_track_by_ts_atomic
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:616,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:619,1
    - Dst: find
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:619,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:621,1
    - Dst: MkvReader::seek_track_by_ts_atomic
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:622,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:624,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 55
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 628
      start: 595
    functionDepth: 11
    functionLinenumber: 595
    functionLinenumberEnd: 628
    functionName: MkvReader::seek
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - expect
    - MkvReader::seek_track_by_ts_atomic
    - calc_timestamp
    - first
    - Result::ok_or
    - find
    - iter
    - Error::SeekError
    - symphonia_core::errors::seek_error
    - is_empty
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 632
      start: 630
    functionDepth: 0
    functionLinenumber: 630
    functionLinenumberEnd: 632
    functionName: MkvReader::tracks
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pop_front
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:636,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:637,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:637,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:637,1
    - Dst: into_ts
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:639,1
    - Dst: into_dur
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:640,1
    - Dst: MkvReader::next_element
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:645,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:647,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 650
      start: 634
    functionDepth: 15
    functionLinenumber: 634
    functionLinenumberEnd: 650
    functionName: MkvReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - pop_front
    - MkvReader::next_element
    - into_ts
    - Some
    - Packet::new
    - Ok
    - into_dur
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into_inner
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 657
      start: 652
    functionDepth: 1
    functionLinenumber: 652
    functionLinenumberEnd: 657
    functionName: MkvReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - into_inner
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:662,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-format-mkv/src/demuxer.rs:662,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 663
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 663
    functionName: MkvReader::score
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Error::IoError
      Src: /src/symphonia/symphonia-core/src/errors.rs:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - err
    argTypes:
    - io::Error
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: Error::from
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 4
    functionsReached:
    - Error::IoError
    linkageType: ''
    returnType: Error
    signature: 'fn from(err: io::Error) -> Error'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_target_path
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:38,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:40,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:40,1
    - Dst: String::push_str
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:42,1
    - Dst: make_raw_tag
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:46,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:49,1
    - Dst: make_raw_tag
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:53,1
    - Dst: String::push_str
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:58,1
    - Dst: make_raw_tag
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:59,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 3
    argNames:
    - tag
    - ctx
    - out
    argTypes:
    - SimpleTagElement
    - '&TagContext'
    - '&mut Vec<RawTag>'
    constantsTouched: []
    func_position:
      end: 61
      start: 32
    functionDepth: 15
    functionLinenumber: 32
    functionLinenumberEnd: 61
    functionName: make_raw_tags
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - make_raw_tag
    - eq_ignore_ascii_case
    - String::push_str
    - get_target_path
    linkageType: ''
    returnType: void
    signature: 'pub fn make_raw_tags(tag: SimpleTagElement, ctx: &TagContext, out:
      &mut Vec<RawTag>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: default_target_name
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:71,1
    - Dst: '&str::into'
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - '&TagContext'
    constantsTouched: []
    func_position:
      end: 85
      start: 63
    functionDepth: 14
    functionLinenumber: 63
    functionLinenumberEnd: 85
    functionName: get_target_path
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - '&str::into'
    - default_target_name
    linkageType: ''
    returnType: String
    signature: 'fn get_target_path(ctx: &TagContext) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:88,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:94,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:94,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:98,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:98,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:105,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:108,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:108,1
    - Dst: '&mut Vec<RawTag>::push'
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:113,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:113,1
    - Dst: '&mut Vec<RawTag>::push'
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:120,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:120,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:122,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:123,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 46
    argCount: 3
    argNames:
    - path
    - tag
    - out
    argTypes:
    - String
    - SimpleTagElement
    - '&mut Vec<RawTag>'
    constantsTouched: []
    func_position:
      end: 125
      start: 87
    functionDepth: 15
    functionLinenumber: 87
    functionLinenumberEnd: 125
    functionName: make_raw_tag
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - RawTagSubField::new
    - as_ref
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - Self::push
    - RawTag::new
    - unwrap_or
    - '&mut Vec<RawTag>::push'
    - Vec::with_capacity
    linkageType: ''
    returnType: void
    signature: 'pub fn make_raw_tag(path: String, tag: SimpleTagElement, out: &mut
      Vec<RawTag>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_str
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:131,1
    - Dst: split_once
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:133,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:133,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:135,1
    - Dst: StandardTag::AlbumArtist
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:152,1
    - Dst: StandardTag::SortAlbumArtist
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:153,1
    - Dst: StandardTag::ReplayGainAlbumGain
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:154,1
    - Dst: StandardTag::ReplayGainAlbumPeak
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:155,1
    - Dst: StandardTag::ReplayGainTrackGain
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:166,1
    - Dst: StandardTag::ReplayGainTrackPeak
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:169,1
    - Dst: StandardTag::Artist
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:184,1
    - Dst: StandardTag::Performer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:185,1
    - Dst: StandardTag::Ensemble
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:186,1
    - Dst: StandardTag::Composer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:187,1
    - Dst: StandardTag::Arranger
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:188,1
    - Dst: StandardTag::Lyrics
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:189,1
    - Dst: StandardTag::Lyricist
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:190,1
    - Dst: StandardTag::Conductor
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:191,1
    - Dst: StandardTag::Director
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:192,1
    - Dst: StandardTag::AssistantDirector
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:193,1
    - Dst: StandardTag::Cinematographer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:194,1
    - Dst: StandardTag::Engineer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:195,1
    - Dst: StandardTag::ArtDirector
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:196,1
    - Dst: StandardTag::ProductionDesigner
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:197,1
    - Dst: StandardTag::Choregrapher
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:198,1
    - Dst: StandardTag::CostumeDesigner
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:199,1
    - Dst: StandardTag::Actor
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:200,1
    - Dst: StandardTag::Writer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:201,1
    - Dst: StandardTag::ScreenplayAuthor
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:202,1
    - Dst: StandardTag::EditedBy
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:203,1
    - Dst: StandardTag::Producer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:204,1
    - Dst: StandardTag::Coproducer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:205,1
    - Dst: StandardTag::ExecutiveProducer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:206,1
    - Dst: StandardTag::Distributor
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:207,1
    - Dst: StandardTag::Engineer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:208,1
    - Dst: StandardTag::EncodedBy
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:209,1
    - Dst: StandardTag::MixDj
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:210,1
    - Dst: StandardTag::Remixer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:211,1
    - Dst: StandardTag::ProductionStudio
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:212,1
    - Dst: StandardTag::Thanks
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:213,1
    - Dst: StandardTag::Label
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:214,1
    - Dst: StandardTag::Label
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:215,1
    - Dst: StandardTag::Genre
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:218,1
    - Dst: StandardTag::Mood
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:219,1
    - Dst: StandardTag::MediaFormat
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:220,1
    - Dst: StandardTag::ContentType
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:221,1
    - Dst: StandardTag::Subject
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:222,1
    - Dst: StandardTag::Description
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:223,1
    - Dst: StandardTag::Keywords
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:224,1
    - Dst: StandardTag::Summary
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:225,1
    - Dst: StandardTag::Synopsis
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:226,1
    - Dst: StandardTag::InitialKey
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:227,1
    - Dst: StandardTag::Period
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:228,1
    - Dst: StandardTag::ContentRating
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:229,1
    - Dst: StandardTag::ReleaseDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:232,1
    - Dst: StandardTag::ReleaseDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:233,1
    - Dst: StandardTag::RecordingDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:234,1
    - Dst: StandardTag::EncodingDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:235,1
    - Dst: StandardTag::TaggingDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:236,1
    - Dst: StandardTag::DigitizedDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:237,1
    - Dst: StandardTag::WrittenDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:238,1
    - Dst: StandardTag::PurchaseDate
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:239,1
    - Dst: StandardTag::RecordingLocation
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:242,1
    - Dst: StandardTag::Comment
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:247,1
    - Dst: StandardTag::PlayCounter
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:248,1
    - Dst: parse_number
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:248,1
    - Dst: parse_rating
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:249,1
    - Dst: StandardTag::Encoder
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:252,1
    - Dst: StandardTag::EncoderSettings
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:253,1
    - Dst: parse_bpm
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:256,1
    - Dst: StandardTag::Measure
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:257,1
    - Dst: StandardTag::Tuning
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:258,1
    - Dst: StandardTag::IdentIsrc
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:261,1
    - Dst: StandardTag::IdentIsbn
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:262,1
    - Dst: StandardTag::IdentBarcode
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:263,1
    - Dst: StandardTag::IdentCatalogNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:264,1
    - Dst: StandardTag::LabelCode
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:265,1
    - Dst: StandardTag::IdentLccn
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:266,1
    - Dst: parse_imdb
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:267,1
    - Dst: parse_tmdb
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:268,1
    - Dst: parse_tvdb
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:269,1
    - Dst: StandardTag::Copyright
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:279,1
    - Dst: StandardTag::ProductionCopyright
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:280,1
    - Dst: StandardTag::License
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:281,1
    - Dst: StandardTag::TermsOfUse
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:282,1
    - Dst: map_total_parts
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:285,1
    - Dst: map_part_number
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:286,1
    - Dst: map_title
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:289,1
    - Dst: map_subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:290,1
    - Dst: StandardTag::OriginalArtist
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:293,1
    - Dst: StandardTag::OriginalLyricist
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:294,1
    - Dst: map_title
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:295,1
    - Dst: StandardTag::OriginalWriter
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:296,1
    - Dst: StandardTag::SortArtist
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:299,1
    - Dst: StandardTag::SortComposer
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:300,1
    - Dst: map_title
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:301,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:308,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 129
    argCount: 2
    argNames:
    - raw
    - lower_ctx
    argTypes:
    - '&RawTag'
    - '&TagContext'
    constantsTouched: []
    func_position:
      end: 322
      start: 128
    functionDepth: 12
    functionLinenumber: 128
    functionLinenumberEnd: 322
    functionName: map_std_tag
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 3
    functionsReached:
    - StandardTag::PlayCounter
    - StandardTag::SortArtist
    - StandardTag::IdentLccn
    - parse_tvdb
    - StandardTag::IdentCatalogNumber
    - StandardTag::Subject
    - StandardTag::Cinematographer
    - StandardTag::RecordingDate
    - StandardTag::TaggingDate
    - parse_imdb
    - StandardTag::OriginalArtist
    - StandardTag::Label
    - StandardTag::Measure
    - StandardTag::TermsOfUse
    - StandardTag::IdentIsrc
    - map_subtitle
    - StandardTag::OriginalLyricist
    - StandardTag::IdentBarcode
    - StandardTag::Composer
    - StandardTag::ReleaseDate
    - StandardTag::Remixer
    - StandardTag::ReplayGainTrackPeak
    - StandardTag::AssistantDirector
    - StandardTag::LabelCode
    - as_str
    - StandardTag::Artist
    - StandardTag::Description
    - StandardTag::Thanks
    - StandardTag::ContentType
    - StandardTag::DigitizedDate
    - StandardTag::Coproducer
    - map_part_number
    - StandardTag::Synopsis
    - StandardTag::Performer
    - StandardTag::InitialKey
    - StandardTag::ArtDirector
    - StandardTag::ReplayGainAlbumPeak
    - StandardTag::ReplayGainTrackGain
    - map_title
    - StandardTag::ProductionStudio
    - StandardTag::Producer
    - StandardTag::Encoder
    - StandardTag::RecordingLocation
    - StandardTag::WrittenDate
    - StandardTag::EncodingDate
    - StandardTag::Conductor
    - StandardTag::ReplayGainAlbumGain
    - StandardTag::OriginalWriter
    - StandardTag::Lyricist
    - map_total_parts
    - StandardTag::SortComposer
    - StandardTag::Summary
    - StandardTag::Period
    - StandardTag::Choregrapher
    - StandardTag::ScreenplayAuthor
    - StandardTag::MediaFormat
    - StandardTag::Genre
    - parse_rating
    - parse_number
    - StandardTag::Arranger
    - Some
    - StandardTag::AlbumArtist
    - StandardTag::Copyright
    - unwrap_or
    - StandardTag::PurchaseDate
    - StandardTag::Tuning
    - StandardTag::Mood
    - StandardTag::Engineer
    - StandardTag::EncodedBy
    - StandardTag::Actor
    - StandardTag::Writer
    - StandardTag::ContentRating
    - clone
    - StandardTag::ProductionCopyright
    - split_once
    - parse_tmdb
    - StandardTag::EditedBy
    - StandardTag::License
    - StandardTag::Distributor
    - StandardTag::ProductionDesigner
    - StandardTag::MixDj
    - StandardTag::Comment
    - StandardTag::SortAlbumArtist
    - StandardTag::Director
    - StandardTag::ExecutiveProducer
    - StandardTag::CostumeDesigner
    - StandardTag::Lyrics
    - parse_bpm
    - StandardTag::Ensemble
    - StandardTag::IdentIsbn
    - StandardTag::Keywords
    - StandardTag::EncoderSettings
    linkageType: ''
    returnType: Option
    signature: 'pub fn map_std_tag(raw: &RawTag, lower_ctx: &TagContext) -> Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:343,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - target_value
    - is_video
    argTypes:
    - u64
    - bool
    constantsTouched: []
    func_position:
      end: 344
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 344
    functionName: default_target_name
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 2
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'fn default_target_name(target_value: u64, is_video: bool) -> Option<&''static
      str>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:354,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:354,1
    - Dst: String::as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:357,1
    - Dst: deref
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:357,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:354,1
    - Dst: default_target_name
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:358,1
    - Dst: parse_number
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:361,1
    - Dst: StandardTag::VolumeTotal
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:367,1
    - Dst: StandardTag::TvSeasonTotal
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:369,1
    - Dst: StandardTag::TvEpisodeTotal
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:375,1
    - Dst: StandardTag::DiscTotal
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:376,1
    - Dst: StandardTag::TrackTotal
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:377,1
    - Dst: StandardTag::MovementTotal
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:380,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:386,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 2
    argNames:
    - value
    - ctx
    argTypes:
    - '&Arc<String>'
    - '&TagContext'
    constantsTouched: []
    func_position:
      end: 399
      start: 352
    functionDepth: 9
    functionLinenumber: 352
    functionLinenumberEnd: 399
    functionName: map_total_parts
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - parse_number
    - StandardTag::MovementTotal
    - StandardTag::TrackTotal
    - or_else
    - as_ref
    - Some
    - map
    - deref
    - StandardTag::VolumeTotal
    - StandardTag::TvEpisodeTotal
    - default_target_name
    - StandardTag::DiscTotal
    - String::as_ref
    - StandardTag::TvSeasonTotal
    linkageType: ''
    returnType: Option
    signature: 'fn map_total_parts(value: &Arc<String>, ctx: &TagContext) -> Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_number
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:402,1
    - Dst: StandardTag::VolumeNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:408,1
    - Dst: StandardTag::OpusNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:409,1
    - Dst: StandardTag::TvSeasonNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:410,1
    - Dst: StandardTag::TvEpisodeNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:416,1
    - Dst: StandardTag::DiscNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:417,1
    - Dst: StandardTag::TrackNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:418,1
    - Dst: StandardTag::MovementNumber
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:421,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:426,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - value
    - target
    argTypes:
    - '&Arc<String>'
    - '&str'
    constantsTouched: []
    func_position:
      end: 427
      start: 401
    functionDepth: 12
    functionLinenumber: 401
    functionLinenumberEnd: 427
    functionName: map_part_number
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - parse_number
    - StandardTag::VolumeNumber
    - StandardTag::OpusNumber
    - Some
    - StandardTag::TvEpisodeNumber
    - StandardTag::TvSeasonNumber
    - StandardTag::MovementNumber
    - StandardTag::DiscNumber
    - StandardTag::TrackNumber
    linkageType: ''
    returnType: Option
    signature: 'fn map_part_number(value: &Arc<String>, target: &str) -> Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: StandardTag::CollectionTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:441,1
    - Dst: StandardTag::SortCollectionTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:442,1
    - Dst: StandardTag::EditionTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:446,1
    - Dst: StandardTag::SortEditionTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:447,1
    - Dst: StandardTag::VolumeTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:452,1
    - Dst: StandardTag::SortVolumeTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:453,1
    - Dst: StandardTag::Opus
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:457,1
    - Dst: StandardTag::TvSeasonTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:461,1
    - Dst: StandardTag::SortTvSeasonTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:462,1
    - Dst: StandardTag::Album
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:467,1
    - Dst: StandardTag::OriginalAlbum
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:468,1
    - Dst: StandardTag::SortAlbum
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:469,1
    - Dst: StandardTag::MovieTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:474,1
    - Dst: StandardTag::SortMovieTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:475,1
    - Dst: StandardTag::TvEpisodeTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:479,1
    - Dst: StandardTag::SortTvEpisodeTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:480,1
    - Dst: StandardTag::PartTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:484,1
    - Dst: StandardTag::SortPartTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:485,1
    - Dst: StandardTag::TrackTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:490,1
    - Dst: StandardTag::SortTrackTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:491,1
    - Dst: StandardTag::ChapterTitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:495,1
    - Dst: StandardTag::MovementName
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:499,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:504,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 3
    argNames:
    - value
    - target
    - variant
    argTypes:
    - Arc<String>
    - '&str'
    - Variant
    constantsTouched: []
    func_position:
      end: 505
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 505
    functionName: map_title
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - StandardTag::Opus
    - StandardTag::CollectionTitle
    - StandardTag::TvSeasonTitle
    - StandardTag::SortMovieTitle
    - StandardTag::Album
    - StandardTag::PartTitle
    - StandardTag::SortPartTitle
    - StandardTag::SortVolumeTitle
    - StandardTag::SortTvEpisodeTitle
    - StandardTag::MovementName
    - StandardTag::OriginalAlbum
    - StandardTag::SortTvSeasonTitle
    - StandardTag::VolumeTitle
    - StandardTag::SortCollectionTitle
    - StandardTag::TvEpisodeTitle
    - StandardTag::TrackTitle
    - StandardTag::SortEditionTitle
    - StandardTag::ChapterTitle
    - Some
    - StandardTag::MovieTitle
    - StandardTag::SortAlbum
    - StandardTag::EditionTitle
    - StandardTag::SortTrackTitle
    linkageType: ''
    returnType: Option
    signature: 'fn map_title(value: Arc<String>, target: &str, variant: Variant) ->
      Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: StandardTag::DiscSubtitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:509,1
    - Dst: StandardTag::TrackSubtitle
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:510,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:513,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - value
    - target
    argTypes:
    - Arc<String>
    - '&str'
    constantsTouched: []
    func_position:
      end: 514
      start: 507
    functionDepth: 0
    functionLinenumber: 507
    functionLinenumberEnd: 514
    functionName: map_subtitle
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - StandardTag::TrackSubtitle
    - Some
    - StandardTag::DiscSubtitle
    linkageType: ''
    returnType: Option
    signature: 'fn map_subtitle(value: Arc<String>, target: &str) -> Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:102,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:102,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 11
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: parse_bpm
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 1
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_bpm(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u32>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:244,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:245,1
    - Dst: StandardTag::Rating
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 249
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 249
    functionName: parse_rating
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 1
    functionsReached:
    - StandardTag::Rating
    - Some
    - parse::<u32>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_rating(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: strip_prefix
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:535,1
    - Dst: Result::chars
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:537,1
    - Dst: any
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:537,1
    - Dst: Result::is_ascii_digit
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:537,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:542,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:546,1
    - Dst: StandardTag::ImdbTitleId
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:546,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:546,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:546,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 1
    argNames:
    - value
    argTypes:
    - '&Arc<String>'
    constantsTouched: []
    func_position:
      end: 552
      start: 534
    functionDepth: 10
    functionLinenumber: 534
    functionLinenumberEnd: 552
    functionName: parse_imdb
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - Result::to_string
    - any
    - Arc::new
    - Result::is_ascii_digit
    - Some
    - StandardTag::ImdbTitleId
    - strip_prefix
    - Result::chars
    - Result::len
    linkageType: ''
    returnType: Option
    signature: 'fn parse_imdb(value: &Arc<String>) -> Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split_once
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:555,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:555,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:555,1
    - Dst: Result::chars
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:558,1
    - Dst: any
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:558,1
    - Dst: Result::is_ascii_digit
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:558,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:562,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:564,1
    - Dst: StandardTag::TvdbSeriesId
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:564,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:564,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:564,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:566,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:568,1
    - Dst: StandardTag::TvdbEpisodeId
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:568,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:568,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:568,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:570,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:572,1
    - Dst: StandardTag::TvdbMovieId
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:572,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:572,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:572,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 45
    argCount: 1
    argNames:
    - value
    argTypes:
    - '&Arc<String>'
    constantsTouched: []
    func_position:
      end: 578
      start: 554
    functionDepth: 10
    functionLinenumber: 554
    functionLinenumberEnd: 578
    functionName: parse_tvdb
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - Result::to_string
    - any
    - StandardTag::TvdbMovieId
    - Arc::new
    - as_str
    - Result::is_ascii_digit
    - Some
    - unwrap_or_else
    - StandardTag::TvdbSeriesId
    - StandardTag::TvdbEpisodeId
    - Result::chars
    - split_once
    - eq_ignore_ascii_case
    linkageType: ''
    returnType: Option
    signature: 'fn parse_tvdb(value: &Arc<String>) -> Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split_once
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:581,1
    - Dst: Result::chars
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:583,1
    - Dst: any
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:583,1
    - Dst: Result::is_ascii_digit
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:583,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:587,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:589,1
    - Dst: StandardTag::TmdbMovieId
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:589,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:589,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:589,1
    - Dst: eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:591,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:593,1
    - Dst: StandardTag::TmdbSeriesId
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:593,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:593,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:593,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - value
    argTypes:
    - '&Arc<String>'
    constantsTouched: []
    func_position:
      end: 604
      start: 580
    functionDepth: 10
    functionLinenumber: 580
    functionLinenumberEnd: 604
    functionName: parse_tmdb
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 1
    functionsReached:
    - Result::to_string
    - any
    - Arc::new
    - Result::is_ascii_digit
    - StandardTag::TmdbMovieId
    - Some
    - StandardTag::TmdbSeriesId
    - Result::chars
    - split_once
    - eq_ignore_ascii_case
    linkageType: ''
    returnType: Option
    signature: 'fn parse_tmdb(value: &Arc<String>) -> Option<StandardTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:607,1
    - Dst: ok
      Src: /src/symphonia/symphonia-format-mkv/src/tags.rs:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - '&Arc<String>'
    constantsTouched: []
    func_position:
      end: 608
      start: 606
    functionDepth: 11
    functionLinenumber: 606
    functionLinenumberEnd: 608
    functionName: parse_number
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/tags.rs
    functionUses: 3
    functionsReached:
    - ok
    - parse::<u64>
    linkageType: ''
    returnType: Option
    signature: 'fn parse_number(value: &Arc<String>) -> Option<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:26,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:27,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:28,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - flags
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 32
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 32
    functionName: parse_flags
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/lacing.rs
    functionUses: 1
    functionsReached:
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn parse_flags(flags: u8) -> Result<Lacing>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:35,1
    - Dst: Result::last
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:37,1
    - Dst: copied
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:37,1
    - Dst: ebml::read_signed_vint
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:38,1
    - Dst: checked_add_signed
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:41,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:43,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:46,1
    - Dst: ebml::read_unsigned_vint
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:49,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:50,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:54,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - reader
    - num_frames
    argTypes:
    - R
    - usize
    constantsTouched: []
    func_position:
      end: 55
      start: 34
    functionDepth: 15
    functionLinenumber: 34
    functionLinenumberEnd: 55
    functionName: read_ebml_sizes
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/lacing.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Result::push
    - ebml::read_signed_vint
    - checked_add_signed
    - Result::last
    - symphonia_core::errors::decode_error
    - ebml::read_unsigned_vint
    - Vec::with_capacity
    - copied
    linkageType: ''
    returnType: Result
    signature: 'fn read_ebml_sizes<R: ReadBytes>(mut reader: R, num_frames: usize)
      -> Result<Vec<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:58,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:60,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:61,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:68,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:72,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - reader
    - num_frames
    argTypes:
    - R
    - usize
    constantsTouched: []
    func_position:
      end: 73
      start: 57
    functionDepth: 13
    functionLinenumber: 57
    functionLinenumberEnd: 73
    functionName: read_xiph_sizes
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/lacing.rs
    functionUses: 2
    functionsReached:
    - Result::push
    - Result::read_byte
    - Ok
    - Vec::with_capacity
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_xiph_sizes<R: ReadBytes>(mut reader: R, num_frames:
      usize) -> Result<Vec<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SegmentTicks::into_track_ticks
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:93,1
    - Dst: TrackTicks::try_into_signed
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:93,1
    - Dst: SegmentTicks::checked_add
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:95,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:95,1
    - Dst: into_track_ticks
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:97,1
    - Dst: Timestamp::checked_sub_unsigned
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 3
    argNames:
    - cluster_ts
    - block_rel_ts
    - track
    argTypes:
    - SegmentTicks
    - SignedTrackTicks
    - '&TrackState'
    constantsTouched: []
    func_position:
      end: 100
      start: 87
    functionDepth: 10
    functionLinenumber: 87
    functionLinenumberEnd: 100
    functionName: calculate_block_pts
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/lacing.rs
    functionUses: 1
    functionsReached:
    - Timestamp::checked_sub_unsigned
    - SegmentTicks::into_track_ticks
    - into_track_ticks
    - Option::and_then
    - TrackTicks::try_into_signed
    - SegmentTicks::checked_add
    linkageType: ''
    returnType: Option
    signature: 'fn calculate_block_pts(cluster_ts: SegmentTicks,block_rel_ts: SignedTrackTicks,track:
      &TrackState,) -> Option<SignedTrackTicks>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::or_else
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:113,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:119,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:122,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:122,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:122,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:119,1
    - Dst: String::into_track_ticks
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:124,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 3
    argNames:
    - block_dur
    - track
    - num_frames
    argTypes:
    - Option<TrackTicks>
    - '&TrackState'
    - u64
    constantsTouched: []
    func_position:
      end: 128
      start: 110
    functionDepth: 9
    functionLinenumber: 110
    functionLinenumberEnd: 128
    functionName: FrameDurationIter::new
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/lacing.rs
    functionUses: 1
    functionsReached:
    - unwrap_or_default
    - get
    - map
    - Duration::or_else
    - and_then
    - checked_mul
    - String::into_track_ticks
    linkageType: ''
    returnType: Self
    signature: 'fn new(block_dur: Option<TrackTicks>, track: &TrackState, num_frames:
      u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:132,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:132,1
    - Dst: TrackTicks::from
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 136
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 136
    functionName: FrameDurationIter::next
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/lacing.rs
    functionUses: 0
    functionsReached:
    - get
    - TrackTicks::from
    - saturating_add
    linkageType: ''
    returnType: TrackTicks
    signature: fn next(&mut self) -> TrackTicks
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:146,1
    - Dst: ebml::read_unsigned_vint
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:147,1
    - Dst: SignedTrackTicks::from
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:148,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:148,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:149,1
    - Dst: parse_flags
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:150,1
    - Dst: '&[Track]::get'
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:154,1
    - Dst: u64::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:154,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:154,1
    - Dst: calculate_block_pts
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:156,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:158,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:163,1
    - Dst: usize::len
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:163,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:163,1
    - Dst: FrameDurationIter::new
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:164,1
    - Dst: Self::next
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:164,1
    - Dst: usize::push_back
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:165,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:170,1
    - Dst: read_xiph_sizes
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:172,1
    - Dst: read_ebml_sizes
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:173,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:179,1
    - Dst: try_fold
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:179,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:179,1
    - Dst: usize::len
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:182,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:183,1
    - Dst: FrameDurationIter::new
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:186,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:189,1
    - Dst: Self::next
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:190,1
    - Dst: usize::push_back
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:192,1
    - Dst: Option::checked_add_unsigned
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:195,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:197,1
    - Dst: usize::len
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:202,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:202,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:203,1
    - Dst: usize::push_back
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:204,1
    - Dst: Self::next
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:204,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:207,1
    - Dst: usize::len
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:208,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:208,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:210,1
    - Dst: FrameDurationIter::new
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:213,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:217,1
    - Dst: Self::next
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:218,1
    - Dst: usize::push_back
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:220,1
    - Dst: Option::checked_add_unsigned
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:223,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:225,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/lacing.rs:231,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 151
    argCount: 5
    argNames:
    - block
    - block_duration
    - cluster_ts
    - tracks
    - frames
    argTypes:
    - '&[u8]'
    - Option<TrackTicks>
    - SegmentTicks
    - '&HashMap<u32, TrackState>'
    - '&mut VecDeque<Frame>'
    constantsTouched: []
    func_position:
      end: 232
      start: 139
    functionDepth: 15
    functionLinenumber: 139
    functionLinenumberEnd: 232
    functionName: extract_frames
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/lacing.rs
    functionUses: 1
    functionsReached:
    - usize::push_back
    - parse_flags
    - Result::pos
    - Result::read_be_u16
    - Result::read_boxed_slice_exact
    - Ok
    - symphonia_core::errors::decode_error
    - read_ebml_sizes
    - calculate_block_pts
    - u64::ok_or
    - Result::read_byte
    - Option::checked_add_unsigned
    - checked_add
    - ebml::read_unsigned_vint
    - SignedTrackTicks::from
    - try_fold
    - read_xiph_sizes
    - FrameDurationIter::new
    - usize::len
    - Error::DecodeError
    - Self::next
    - Result::iter
    - BufReader::new
    - '&[Track]::get'
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn extract_frames(block: &[u8],block_duration: Option<TrackTicks>,cluster_ts:
      SegmentTicks,tracks: &HashMap<u32, TrackState>,frames: &mut VecDeque<Frame>,)
      -> Result<bool>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: MatroskaTicks::get
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: pub const fn get(self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:124,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:124,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:125,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:125,1
    - Dst: SegmentTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - segment_time_base
    argTypes:
    - TimeBase
    constantsTouched: []
    func_position:
      end: 127
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionName: MatroskaTicks::into_segment_ticks
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - get
    - SegmentTicks
    - u64::from
    linkageType: ''
    returnType: SegmentTicks
    signature: 'pub fn into_segment_ticks(self, segment_time_base: TimeBase) -> SegmentTicks'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:134,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:134,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:135,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:135,1
    - Dst: TrackTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - track_time_base
    argTypes:
    - TimeBase
    constantsTouched: []
    func_position:
      end: 137
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 137
    functionName: MatroskaTicks::into_track_ticks
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - get
    - TrackTicks
    - u64::from
    linkageType: ''
    returnType: TrackTicks
    signature: 'pub fn into_track_ticks(self, track_time_base: TimeBase) -> TrackTicks'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MatroskaTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: MatroskaTicks::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 2
    functionsReached:
    - MatroskaTicks
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fmt
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 15
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: MatroskaTicks::fmt
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - fmt
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: NonZeroMatroskaTicks::get
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: u64
    signature: pub const fn get(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - NonZeroU64
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: NonZeroMatroskaTicks::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 1
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: NonZeroU64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SignedMatroskaTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: SignedMatroskaTicks::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 1
    functionsReached:
    - SignedMatroskaTicks
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: i64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: SegmentTicks::get
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: pub const fn get(self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TrackTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:205,1
    - Dst: TrackTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:207,1
    - Dst: round
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - track_timestamp_scale
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 208
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 208
    functionName: SegmentTicks::into_track_ticks
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 1
    functionsReached:
    - round
    - TrackTicks
    linkageType: ''
    returnType: TrackTicks
    signature: 'pub fn into_track_ticks(self, track_timestamp_scale: f64) -> TrackTicks'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 215
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionName: SegmentTicks::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 1
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fmt
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 221
      start: 219
    functionDepth: 15
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionName: SegmentTicks::fmt
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - fmt
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: FloatingPointSegmentTicks::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 1
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: f64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: FloatingPointSegmentTicks::get
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: f64
    signature: pub const fn get(self) -> f64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 256
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionName: TrackTicks::get
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: pub const fn get(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: try_into
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:261,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:261,1
    - Dst: ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 262
      start: 260
    functionDepth: 9
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionName: TrackTicks::try_into_signed
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 1
    functionsReached:
    - try_into
    - ok
    - map
    linkageType: ''
    returnType: Option
    signature: pub fn try_into_signed(self) -> Option<SignedTrackTicks>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 268
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionName: TrackTicks::into_dur
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Duration::new
    linkageType: ''
    returnType: Duration
    signature: pub fn into_dur(self) -> Duration
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 275
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionName: TrackTicks::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 3
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fmt
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 15
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: TrackTicks::fmt
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - fmt
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: SignedTrackTicks::get
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i64
    signature: pub const fn get(&self) -> i64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 302
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 302
    functionName: SignedTrackTicks::into_ts
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Timestamp::new
    linkageType: ''
    returnType: Timestamp
    signature: pub fn into_ts(self) -> Timestamp
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:307,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 308
      start: 306
    functionDepth: 9
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionName: SignedTrackTicks::checked_add
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - checked_add
    - map
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add(self, other: Self) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_add_unsigned
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:313,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - other
    argTypes:
    - TrackTicks
    constantsTouched: []
    func_position:
      end: 314
      start: 312
    functionDepth: 9
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionName: SignedTrackTicks::checked_add_unsigned
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - checked_add_unsigned
    - map
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add_unsigned(self, other: TrackTicks) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub_unsigned
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:319,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - other
    argTypes:
    - TrackTicks
    constantsTouched: []
    func_position:
      end: 320
      start: 318
    functionDepth: 9
    functionLinenumber: 318
    functionLinenumberEnd: 320
    functionName: SignedTrackTicks::checked_sub_unsigned
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - map
    - checked_sub_unsigned
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_sub_unsigned(self, other: TrackTicks) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_negative
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:325,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:328,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:328,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:328,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:328,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - track_time_base
    argTypes:
    - TimeBase
    constantsTouched: []
    func_position:
      end: 329
      start: 324
    functionDepth: 9
    functionLinenumber: 324
    functionLinenumberEnd: 329
    functionName: SignedTrackTicks::try_into_matroska_ticks
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - get
    - map
    - checked_mul
    - is_negative
    linkageType: ''
    returnType: Option
    signature: 'pub fn try_into_matroska_ticks(self, track_time_base: TimeBase) ->
      Option<MatroskaTicks>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:342,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - Timestamp
    constantsTouched: []
    func_position:
      end: 343
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionName: SignedTrackTicks::from
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 2
    functionsReached:
    - get
    - Self
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: Timestamp) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fmt
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 349
      start: 347
    functionDepth: 15
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionName: SignedTrackTicks::fmt
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - fmt
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:382,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:390,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:392,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:393,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:396,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:396,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:396,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:397,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:399,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:403,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:403,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:403,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:404,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:406,1
    - Dst: io::Result::read_string
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:410,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:414,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:414,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:418,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:418,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:422,1
    - Dst: io::Result::read_binary
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:422,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:426,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:426,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:430,1
    - Dst: io::Result::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:430,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:434,1
    - Dst: io::Result::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:434,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:438,1
    - Dst: io::Result::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:438,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:442,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:442,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:442,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:443,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:446,1
    - Dst: NonZeroMatroskaTicks::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:446,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:450,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:450,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:450,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:451,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:456,1
    - Dst: NonZeroMatroskaTicks::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:456,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:460,1
    - Dst: io::Result::read_f64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:460,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:464,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:464,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:468,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:474,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:480,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:486,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:492,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:498,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:504,1
    - Dst: None::unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:516,1
    - Dst: '&str::into'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:516,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:517,1
    - Dst: MatroskaTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:517,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:518,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:519,1
    - Dst: MatroskaTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:519,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:521,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:522,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:522,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:523,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:523,1
    - Dst: Result::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:526,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:526,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 195
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 538
      start: 375
    functionDepth: 10
    functionLinenumber: 375
    functionLinenumberEnd: 538
    functionName: TrackElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - '&str::into'
    - None::ok_or
    - Option::ok_or
    - Ok
    - NonZeroMatroskaTicks::from
    - io::Result::next_header
    - MatroskaTicks
    - None::unwrap_or
    - map
    - io::Result::read_string_no_default
    - Result::element_type
    - Result::ok_or
    - Some
    - io::Result::read_binary
    - io::Result::read_f64_default
    - Vec::new
    - Self::ok_or
    - io::Result::read_master_element
    - Default::default
    - None::unwrap_or_else
    - NonZeroU64::new
    - io::Result::read_u64_no_default
    - io::Result::read_u64
    - EbmlError::ElementError
    - Self::push
    - io::Result::read_string
    - io::Result::read_u64_default
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:559,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:560,1
    - Dst: io::Result::read_f64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:563,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:564,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:566,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:566,1
    - Dst: io::Result::read_f64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:576,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:577,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:578,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:578,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:580,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:580,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:588,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:588,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:591,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:591,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:592,1
    - Dst: transpose
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:588,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:598,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:598,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:598,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:599,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:601,1
    - Dst: Result::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:611,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:612,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:612,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:612,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:618,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:618,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:620,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 76
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 621
      start: 553
    functionDepth: 9
    functionLinenumber: 553
    functionLinenumberEnd: 621
    functionName: AudioElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Self::expect
    - NonZeroU64::new
    - Result::element_type
    - io::Result::next_header
    - io::Result::read_u64_no_default
    - Option::unwrap_or
    - transpose
    - Some
    - map
    - Option::map
    - io::Result::read_u64
    - Result::unwrap_or
    - Self::ok_or
    - EbmlError::ElementError
    - Err
    - Ok
    - unwrap_or
    - io::Result::read_f64
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:638,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:639,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:642,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:642,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:642,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:643,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:645,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:649,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:649,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:649,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:650,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:652,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:661,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:662,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:662,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:663,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:664,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 666
      start: 634
    functionDepth: 10
    functionLinenumber: 634
    functionLinenumberEnd: 666
    functionName: VideoElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::ok_or
    - NonZeroU64::new
    - Result::element_type
    - io::Result::read_u64_no_default
    - io::Result::next_header
    - Some
    - Self::ok_or
    - EbmlError::ElementError
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:684,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:685,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:688,1
    - Dst: u32::to_be_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:692,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:692,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:694,1
    - Dst: io::Result::read_binary
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:696,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:700,1
    - Dst: io::Result::read_binary
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:702,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:715,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 716
      start: 677
    functionDepth: 2
    functionLinenumber: 677
    functionLinenumberEnd: 716
    functionName: BlockAdditionMappingElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Result::element_type
    - io::Result::next_header
    - None::unwrap_or
    - Some
    - io::Result::read_binary
    - io::Result::read_u64
    - Ok
    - u32::to_be_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:728,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:730,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:731,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:734,1
    - Dst: io::Result::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:734,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:743,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:743,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 744
      start: 727
    functionDepth: 10
    functionLinenumber: 727
    functionLinenumberEnd: 744
    functionName: SeekHeadElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Result::element_type
    - io::Result::next_header
    - Self::into_boxed_slice
    - Vec::new
    - Self::push
    - io::Result::read_master_element
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:760,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:761,1
    - Dst: io::Result::read_binary_into
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:766,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:769,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:770,1
    - Dst: u64::from_be_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:770,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:772,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:772,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:778,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:778,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:787,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:788,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:788,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:789,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:790,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 49
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 792
      start: 756
    functionDepth: 1
    functionLinenumber: 756
    functionLinenumberEnd: 792
    functionName: SeekElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_binary_into
    - None::ok_or
    - Result::element_type
    - io::Result::next_header
    - io::Result::read_u64_no_default
    - Some
    - u64::from_be_bytes
    - EbmlError::ElementError
    - Err
    - copy_from_slice
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:806,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:807,1
    - Dst: '&[Track]::push'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:810,1
    - Dst: io::Result::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:810,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:819,1
    - Dst: '&[Track]::into_boxed_slice'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:819,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 820
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 820
    functionName: TracksElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - '&[Track]::into_boxed_slice'
    - '&[Track]::push'
    - Result::element_type
    - io::Result::next_header
    - io::Result::read_master_element
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:825,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:825,1
    - Dst: '&mut TargetTagsMap::insert'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:826,1
    - Dst: TargetUid::Track
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:826,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:826,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 828
      start: 824
    functionDepth: 11
    functionLinenumber: 824
    functionLinenumberEnd: 828
    functionName: TracksElement::get_target_uids
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - get
    - '&mut TargetTagsMap::insert'
    - iter
    - Default::default
    - TargetUid::Track
    - for_each
    linkageType: ''
    returnType: void
    signature: 'pub(crate) fn get_target_uids(&self, target_tags: &mut TargetTagsMap)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:855,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:856,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:859,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:859,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:862,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:862,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:863,1
    - Dst: transpose
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:859,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:869,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:869,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:872,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:872,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:872,1
    - Dst: transpose
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:869,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:880,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:882,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:882,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:891,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:893,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:893,1
    - Dst: io::Result::read_string
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:902,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:906,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:906,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:909,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:909,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:909,1
    - Dst: transpose
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:906,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:917,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:917,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:920,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:920,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:920,1
    - Dst: transpose
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:917,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:933,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:933,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:933,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:934,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:934,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:934,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:936,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:936,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:936,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:938,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:938,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:938,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:942,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:942,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:949,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:949,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:954,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:957,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:958,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:959,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:959,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 138
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 963
      start: 846
    functionDepth: 9
    functionLinenumber: 846
    functionLinenumberEnd: 963
    functionName: EbmlHeaderElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Self::expect
    - None::ok_or
    - NonZeroU64::new
    - Result::element_type
    - io::Result::next_header
    - transpose
    - None::unwrap_or
    - map
    - io::Result::read_u64
    - Self::ok_or
    - EbmlError::ElementError
    - Err
    - io::Result::read_string
    - Ok
    - unwrap_or
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:986,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:987,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:990,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:990,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:993,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:993,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:993,1
    - Dst: transpose
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:990,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1002,1
    - Dst: FloatingPointSegmentTicks::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1002,1
    - Dst: io::Result::read_f64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1002,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1006,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1006,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1010,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1010,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1014,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1014,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1025,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1025,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1025,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1027,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1030,1
    - Dst: io::Result::into_boxed_str
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1030,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1031,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1032,1
    - Dst: into_boxed_str
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1031,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1034,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1035,1
    - Dst: into_boxed_str
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1034,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 74
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1038
      start: 979
    functionDepth: 9
    functionLinenumber: 979
    functionLinenumberEnd: 1038
    functionName: InfoElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::ok_or
    - io::Result::read_f64_no_default
    - FloatingPointSegmentTicks::from
    - Ok
    - Self::expect
    - io::Result::next_header
    - None::unwrap_or
    - map
    - Option::map
    - io::Result::read_string_no_default
    - Result::element_type
    - Some
    - Self::ok_or
    - into_boxed_str
    - NonZeroU64::new
    - transpose
    - io::Result::read_u64
    - io::Result::into_boxed_str
    - EbmlError::ElementError
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1053,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1054,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1057,1
    - Dst: io::Result::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1057,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1066,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1066,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1067
      start: 1050
    functionDepth: 1
    functionLinenumber: 1050
    functionLinenumberEnd: 1067
    functionName: CuesElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Result::element_type
    - io::Result::next_header
    - into_boxed_slice
    - io::Result::read_master_element
    - Ok
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1085,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1086,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1089,1
    - Dst: MatroskaTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1089,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1089,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1093,1
    - Dst: io::Result::read_master_element
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1093,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1102,1
    - Dst: String::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1103,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1103,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1104,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1104,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1106
      start: 1081
    functionDepth: 1
    functionLinenumber: 1081
    functionLinenumberEnd: 1106
    functionName: CuePointElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::ok_or
    - MatroskaTicks
    - io::Result::read_u64_no_default
    - Result::element_type
    - io::Result::next_header
    - Some
    - String::ok_or
    - EbmlError::ElementError
    - io::Result::read_master_element
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1125,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1126,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1129,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1129,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1129,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1130,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1133,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1137,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1137,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1141,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1141,1
    - Dst: io::Result::skip_data
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1147,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1155,1
    - Dst: Result::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1156,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1157,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1158,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1159,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1162
      start: 1120
    functionDepth: 10
    functionLinenumber: 1120
    functionLinenumberEnd: 1162
    functionName: CueTrackPositionsElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::ok_or
    - NonZeroU64::new
    - Result::element_type
    - io::Result::read_u64_no_default
    - io::Result::next_header
    - io::Result::skip_data
    - Result::ok_or
    - Some
    - Self::ok_or
    - EbmlError::ElementError
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1183,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1184,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1187,1
    - Dst: SignedMatroskaTicks::from
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1187,1
    - Dst: io::Result::read_i64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1187,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1191,1
    - Dst: io::Result::read_binary
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1191,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1195,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1195,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1199,1
    - Dst: io::Result::read_i64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1199,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1208,1
    - Dst: '&''static [ProbeFormatData]::ok_or'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1209,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1209,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1214
      start: 1177
    functionDepth: 9
    functionLinenumber: 1177
    functionLinenumberEnd: 1214
    functionName: BlockGroupElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - SignedMatroskaTicks::from
    - io::Result::read_i64_no_default
    - Result::element_type
    - io::Result::next_header
    - Some
    - io::Result::read_binary
    - map
    - io::Result::read_u64
    - EbmlError::ElementError
    - '&''static [ProbeFormatData]::ok_or'
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1226,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1228,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1229,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1231,1
    - Dst: read_master_element::<TagElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1231,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1240,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1240,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1241
      start: 1225
    functionDepth: 10
    functionLinenumber: 1225
    functionLinenumberEnd: 1241
    functionName: TagsElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Result::element_type
    - io::Result::next_header
    - Vec::new
    - into_boxed_slice
    - read_master_element::<TagElement>
    - Ok
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::get_mut
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1258,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1262,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1262,1
    - Dst: tags::map_std_tag
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1262,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1266,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 4
    argNames:
    - map
    - uid
    - raw_tags
    - target
    argTypes:
    - '&mut UidMap'
    - u64
    - '&Vec<RawTag>'
    - '&Target'
    constantsTouched: []
    func_position:
      end: 1268
      start: 1257
    functionDepth: 13
    functionLinenumber: 1257
    functionLinenumberEnd: 1268
    functionName: T::a::g::s::E::l::e::m::e::n::t::::::::i::n::t::o::_::m::e::t::a::d::a::t::a::append_to_map
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - tags::map_std_tag
    - Option::get_mut
    - clone
    - Some
    - Self::clone
    - push
    linkageType: ''
    returnType: void
    signature: 'fn append_to_map(map: &mut UidMap, uid: u64, raw_tags: &Vec<RawTag>,
      target: &Target)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::values_mut
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1272,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1276,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1276,1
    - Dst: tags::map_std_tag
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1276,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1280,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 3
    argNames:
    - map
    - raw_tags
    - target
    argTypes:
    - '&mut UidMap'
    - '&Vec<RawTag>'
    - '&Target'
    constantsTouched: []
    func_position:
      end: 1282
      start: 1271
    functionDepth: 13
    functionLinenumber: 1271
    functionLinenumberEnd: 1282
    functionName: T::a::g::s::E::l::e::m::e::n::t::::::::i::n::t::o::_::m::e::t::a::d::a::t::a::append_to_map_all
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - tags::map_std_tag
    - clone
    - Option::values_mut
    - Some
    - Self::clone
    - push
    linkageType: ''
    returnType: void
    signature: 'fn append_to_map_all(map: &mut UidMap, raw_tags: &Vec<RawTag>, target:
      &Target)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1294,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1294,1
    - Dst: tags::map_std_tag
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1294,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - builder
    - raw_tags
    - target
    - ctx
    argTypes:
    - '&mut MetadataBuilder'
    - '&Vec<RawTag>'
    - '&Option<Target>'
    - '&mut TagContext'
    constantsTouched: []
    func_position:
      end: 1299
      start: 1285
    functionDepth: 13
    functionLinenumber: 1285
    functionLinenumberEnd: 1299
    functionName: T::a::g::s::E::l::e::m::e::n::t::::::::i::n::t::o::_::m::e::t::a::d::a::t::a::append_to_media
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Self::clone
    - tags::map_std_tag
    - '&mut MetadataBuilder::add_tag'
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn append_to_media(builder: &mut MetadataBuilder,raw_tags: &Vec<RawTag>,target:
      &Option<Target>,ctx: &mut TagContext,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1301,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1304,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1305,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1306,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1307,1
    - Dst: '&mut TargetTagsMap::keys'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1310,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1311,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1311,1
    - Dst: '&[Track]::insert'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1313,1
    - Dst: Result::insert
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1314,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1315,1
    - Dst: '&[Attachment]::insert'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1316,1
    - Dst: sort_by_key
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1323,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1324,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1324,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1324,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1331,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1331,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1333,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1333,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1339,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1339,1
    - Dst: tags::make_raw_tags
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1342,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1347,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1348,1
    - Dst: append_to_map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1354,1
    - Dst: append_to_map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1357,1
    - Dst: append_to_map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1360,1
    - Dst: append_to_map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1363,1
    - Dst: append_to_map_all
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1371,1
    - Dst: append_to_map_all
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1375,1
    - Dst: append_to_map_all
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1379,1
    - Dst: append_to_map_all
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1383,1
    - Dst: append_to_media
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1388,1
    - Dst: append_to_media
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1393,1
    - Dst: PerTrackMetadataBuilder::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1401,1
    - Dst: Self::add_tag
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1403,1
    - Dst: Self::add_track
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1405,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1405,1
    - Dst: '&mut TargetTagsMap::entry'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1409,1
    - Dst: TargetUid::Edition
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1409,1
    - Dst: or_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1409,1
    - Dst: append
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1410,1
    - Dst: '&mut TargetTagsMap::entry'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1414,1
    - Dst: TargetUid::Chapter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1414,1
    - Dst: or_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1414,1
    - Dst: append
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1415,1
    - Dst: '&mut TargetTagsMap::entry'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1419,1
    - Dst: TargetUid::Attachment
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1419,1
    - Dst: or_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1419,1
    - Dst: append
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1420,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1424,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 274
    argCount: 2
    argNames:
    - target_tags
    - is_video
    argTypes:
    - '&mut TargetTagsMap'
    - bool
    constantsTouched: []
    func_position:
      end: 1425
      start: 1248
    functionDepth: 16
    functionLinenumber: 1248
    functionLinenumberEnd: 1425
    functionName: TagsElement::into_metadata
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - MetadataBuilder::new
    - '&[Track]::insert'
    - append_to_map
    - TargetUid::Chapter
    - sort_by_key
    - PerTrackMetadataBuilder::new
    - Self::build
    - expect
    - or_default
    - as_ref
    - map
    - append_to_media
    - Self::add_tag
    - '&mut TargetTagsMap::keys'
    - Result::insert
    - len
    - TargetUid::Edition
    - TargetUid::Attachment
    - append
    - Vec::new
    - tags::make_raw_tags
    - '&mut TargetTagsMap::entry'
    - Default::default
    - unwrap_or
    - is_empty
    - Vec::with_capacity
    - append_to_map_all
    - Self::add_track
    - '&[Attachment]::insert'
    - Option::insert
    - clone
    linkageType: ''
    returnType: MetadataRevision
    signature: 'pub(crate) fn into_metadata(mut self,target_tags: &mut TargetTagsMap,is_video:
      bool,) -> MetadataRevision'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1438,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1441,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1442,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1444,1
    - Dst: read_master_element::<TargetsElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1444,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1447,1
    - Dst: read_master_element::<SimpleTagElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1447,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1456,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1456,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1457
      start: 1437
    functionDepth: 10
    functionLinenumber: 1437
    functionLinenumberEnd: 1457
    functionName: TagElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - read_master_element::<SimpleTagElement>
    - Result::element_type
    - io::Result::next_header
    - Some
    - Self::into_boxed_slice
    - Vec::new
    - Self::push
    - Ok
    - read_master_element::<TargetsElement>
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1485,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1491,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1492,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1495,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1499,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1499,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1503,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1504,1
    - Dst: TargetUid::Track
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1504,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1512,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1513,1
    - Dst: TargetUid::Edition
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1513,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1521,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1522,1
    - Dst: TargetUid::Chapter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1522,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1530,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1531,1
    - Dst: TargetUid::Attachment
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1531,1
    - Dst: None::unwrap_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1545,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1547,1
    - Dst: None::map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1549,1
    - Dst: Result::into_boxed_str
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1549,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 79
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1556
      start: 1482
    functionDepth: 10
    functionLinenumber: 1482
    functionLinenumberEnd: 1556
    functionName: TargetsElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::map
    - TargetUid::Edition
    - TargetUid::Attachment
    - Result::element_type
    - io::Result::next_header
    - TargetUid::Chapter
    - Some
    - None::unwrap_or
    - Vec::new
    - io::Result::read_u64
    - Result::into_boxed_str
    - io::Result::read_string_no_default
    - Ok
    - TargetUid::Track
    - io::Result::read_u64_default
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1579,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1581,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1582,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1585,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1585,1
    - Dst: io::Result::read_string
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1590,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1594,1
    - Dst: RawValue::String
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1594,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1594,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1594,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1598,1
    - Dst: RawValue::Binary
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1598,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1598,1
    - Dst: io::Result::read_binary
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1598,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1602,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1602,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1606,1
    - Dst: '&MkvEbmlElementHeader::depth'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1611,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1612,1
    - Dst: read_master_element::<SimpleTagElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1612,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1622,1
    - Dst: String::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1623,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1623,1
    - Dst: into_boxed_str
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1623,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 68
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1630
      start: 1573
    functionDepth: 10
    functionLinenumber: 1573
    functionLinenumberEnd: 1630
    functionName: SimpleTagElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - '&MkvEbmlElementHeader::depth'
    - Arc::new
    - Result::element_type
    - io::Result::next_header
    - read_master_element::<SimpleTagElement>
    - Ok
    - Some
    - io::Result::read_string
    - io::Result::read_binary
    - Vec::new
    - String::ok_or
    - Self::push
    - EbmlError::ElementError
    - io::Result::read_string_no_default
    - RawValue::String
    - RawValue::Binary
    - into_boxed_str
    - io::Result::read_u64_default
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1652,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1653,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1656,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1656,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1660,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1660,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1664,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1664,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1668,1
    - Dst: io::Result::read_binary
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1668,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1672,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1672,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1672,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1673,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1675,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1684,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1685,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1685,1
    - Dst: String::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1686,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1686,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1688,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1689,1
    - Dst: '&''static [ProbeFormatData]::ok_or'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1690,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1690,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 63
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1692
      start: 1645
    functionDepth: 10
    functionLinenumber: 1645
    functionLinenumberEnd: 1692
    functionName: AttachedFileElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::ok_or
    - NonZeroU64::new
    - Result::element_type
    - io::Result::next_header
    - io::Result::read_u64_no_default
    - '&''static [ProbeFormatData]::ok_or'
    - Some
    - io::Result::read_binary
    - Self::ok_or
    - EbmlError::ElementError
    - String::ok_or
    - io::Result::read_string_no_default
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1704,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1706,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1707,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1709,1
    - Dst: read_master_element::<AttachedFileElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1709,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1718,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1718,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1719
      start: 1703
    functionDepth: 10
    functionLinenumber: 1703
    functionLinenumberEnd: 1719
    functionName: AttachmentsElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - read_master_element::<AttachedFileElement>
    - Result::element_type
    - io::Result::next_header
    - Self::into_boxed_slice
    - Vec::new
    - Self::push
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1724,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1724,1
    - Dst: '&mut TargetTagsMap::insert'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1725,1
    - Dst: TargetUid::Attachment
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1725,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1725,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 1727
      start: 1723
    functionDepth: 11
    functionLinenumber: 1723
    functionLinenumberEnd: 1727
    functionName: AttachmentsElement::get_target_uids
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - TargetUid::Attachment
    - get
    - '&mut TargetTagsMap::insert'
    - iter
    - Default::default
    - for_each
    linkageType: ''
    returnType: void
    signature: 'pub(crate) fn get_target_uids(&self, target_tags: &mut TargetTagsMap)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into_vec
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1730,1
    - Dst: into_iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1730,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1730,1
    - Dst: Attachment::File
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1734,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1737,1
    - Dst: collect
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - _target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 1742
      start: 1729
    functionDepth: 9
    functionLinenumber: 1729
    functionLinenumberEnd: 1742
    functionName: AttachmentsElement::into_attachments
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - into_iter
    - Some
    - map
    - collect
    - Attachment::File
    - into_vec
    linkageType: ''
    returnType: Vec
    signature: 'pub(crate) fn into_attachments(self, _target_tags: &mut TargetTagsMap)
      -> Vec<Attachment>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1754,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1756,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1757,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1759,1
    - Dst: read_master_element::<EditionEntryElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1759,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1768,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1768,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1769
      start: 1753
    functionDepth: 10
    functionLinenumber: 1753
    functionLinenumberEnd: 1769
    functionName: ChaptersElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Result::element_type
    - io::Result::next_header
    - Self::into_boxed_slice
    - Vec::new
    - read_master_element::<EditionEntryElement>
    - Self::push
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1774,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1774,1
    - Dst: get_target_uids
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 1775
      start: 1773
    functionDepth: 11
    functionLinenumber: 1773
    functionLinenumberEnd: 1775
    functionName: ChaptersElement::get_target_uids
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - iter
    - get_target_uids
    - for_each
    linkageType: ''
    returnType: void
    signature: 'pub(crate) fn get_target_uids(&self, target_tags: &mut TargetTagsMap)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1784,1
    - Dst: position
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1784,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1784,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1788,1
    - Dst: position
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1788,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1791,1
    - Dst: into_vec
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1792,1
    - Dst: swap_remove
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1792,1
    - Dst: into_chapter_group
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1792,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 1794
      start: 1779
    functionDepth: 11
    functionLinenumber: 1779
    functionLinenumberEnd: 1794
    functionName: ChaptersElement::into_chapter_group
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - or_else
    - swap_remove
    - into_chapter_group
    - iter
    - Option::map
    - position
    - into_vec
    linkageType: ''
    returnType: Option
    signature: 'pub(crate) fn into_chapter_group(self,target_tags: &mut TargetTagsMap,)
      -> Option<ChapterGroup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1816,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1817,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1819,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1820,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1823,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1823,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1823,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1824,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1826,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1829,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1832,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1835,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1838,1
    - Dst: read_master_element::<EditionDisplayElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1838,1
    - Dst: Option::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1841,1
    - Dst: read_master_element::<ChapterAtomElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1841,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1850,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1851,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1851,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1855,1
    - Dst: Option::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1856,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 61
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1858
      start: 1811
    functionDepth: 10
    functionLinenumber: 1811
    functionLinenumberEnd: 1858
    functionName: EditionEntryElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::ok_or
    - NonZeroU64::new
    - Result::element_type
    - io::Result::read_u64_no_default
    - io::Result::next_header
    - read_master_element::<ChapterAtomElement>
    - Some
    - read_master_element::<EditionDisplayElement>
    - Self::into_boxed_slice
    - Vec::new
    - Self::ok_or
    - EbmlError::ElementError
    - Self::push
    - Option::into_boxed_slice
    - Ok
    - Option::push
    - io::Result::read_u64_default
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut TargetTagsMap::insert'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1864,1
    - Dst: TargetUid::Edition
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1864,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1864,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1864,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1866,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1866,1
    - Dst: get_target_uids
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 1867
      start: 1862
    functionDepth: 15
    functionLinenumber: 1862
    functionLinenumberEnd: 1867
    functionName: EditionEntryElement::get_target_uids
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - TargetUid::Edition
    - get
    - '&mut TargetTagsMap::insert'
    - iter
    - get_target_uids
    - Default::default
    - for_each
    linkageType: ''
    returnType: void
    signature: 'pub(crate) fn get_target_uids(&self, target_tags: &mut TargetTagsMap)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut TargetTagsMap::remove'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1871,1
    - Dst: TargetUid::Edition
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1872,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1872,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1871,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1873,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1873,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1877,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1882,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1882,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1885,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1887,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1889,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1890,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1893,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1893,1
    - Dst: StandardTag::ChapterTitle
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1893,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1897,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1897,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1901,1
    - Dst: into_chapter_group_item
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1901,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 54
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 1906
      start: 1869
    functionDepth: 15
    functionLinenumber: 1869
    functionLinenumberEnd: 1906
    functionName: EditionEntryElement::into_chapter_group
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - push
    - TargetUid::Edition
    - len
    - RawTagSubField::new
    - Arc::new
    - '&mut TargetTagsMap::remove'
    - get
    - Option::clone
    - Tag::new_std
    - Self::into_boxed_slice
    - unwrap_or_else
    - StandardTag::ChapterTitle
    - into_chapter_group_item
    - RawTag::new_with_sub_fields
    - Self::push
    - Vec::with_capacity
    linkageType: ''
    returnType: ChapterGroup
    signature: 'pub(crate) fn into_chapter_group(self, target_tags: &mut TargetTagsMap)
      -> ChapterGroup'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1922,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1923,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1926,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1926,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1930,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1930,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1939,1
    - Dst: String::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1940,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1940,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 1943
      start: 1918
    functionDepth: 1
    functionLinenumber: 1918
    functionLinenumberEnd: 1943
    functionName: EditionDisplayElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Result::element_type
    - io::Result::next_header
    - Some
    - String::ok_or
    - EbmlError::ElementError
    - io::Result::read_string_no_default
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1969,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1970,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1972,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1973,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1976,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1976,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1976,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1977,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1979,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1984,1
    - Dst: MatroskaTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1984,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1984,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1988,1
    - Dst: MatroskaTicks
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1988,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1988,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1992,1
    - Dst: io::Result::read_u64_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:1996,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2000,1
    - Dst: read_master_element::<ChapterDisplayElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2000,1
    - Dst: io::Result::read_u64_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2004,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2005,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2006,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2006,1
    - Dst: Option::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2010,1
    - Dst: read_master_element::<ChapterAtomElement>
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2010,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2019,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2020,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2020,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2023,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2024,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2027,1
    - Dst: Option::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2028,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 87
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 2030
      start: 1962
    functionDepth: 10
    functionLinenumber: 1962
    functionLinenumberEnd: 2030
    functionName: ChapterAtomElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - None::ok_or
    - Ok
    - Option::push
    - read_master_element::<ChapterDisplayElement>
    - io::Result::next_header
    - MatroskaTicks
    - read_master_element::<ChapterAtomElement>
    - Option::into_boxed_slice
    - Result::element_type
    - Some
    - Self::into_boxed_slice
    - Vec::new
    - Self::ok_or
    - NonZeroU64::new
    - io::Result::read_u64_no_default
    - EbmlError::ElementError
    - Self::push
    - Err
    - io::Result::read_u64_default
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut TargetTagsMap::insert'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2036,1
    - Dst: TargetUid::Chapter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2036,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2036,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2036,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2038,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2038,1
    - Dst: get_target_uids
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2038,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 2039
      start: 2034
    functionDepth: 15
    functionLinenumber: 2034
    functionLinenumberEnd: 2039
    functionName: ChapterAtomElement::get_target_uids
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - TargetUid::Chapter
    - get
    - '&mut TargetTagsMap::insert'
    - iter
    - get_target_uids
    - Default::default
    - for_each
    linkageType: ''
    returnType: void
    signature: 'pub(crate) fn get_target_uids(&self, target_tags: &mut TargetTagsMap)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut TargetTagsMap::remove'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2046,1
    - Dst: TargetUid::Chapter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2047,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2047,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2046,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2048,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2048,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2052,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2052,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2058,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2058,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2062,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2062,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2066,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2066,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2070,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2072,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2074,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2075,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2078,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2078,1
    - Dst: StandardTag::ChapterTitle
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2078,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2083,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2083,1
    - Dst: Time::from_nanos_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2087,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2087,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2088,1
    - Dst: Time::from_nanos_u64
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2088,1
    - Dst: Result::get
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2088,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2095,1
    - Dst: ChapterGroupItem::Chapter
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2097,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2102,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2102,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2106,1
    - Dst: into_chapter_group_item
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2106,1
    - Dst: ChapterGroupItem::Group
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2110,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 96
    argCount: 1
    argNames:
    - target_tags
    argTypes:
    - '&mut TargetTagsMap'
    constantsTouched: []
    func_position:
      end: 2128
      start: 2041
    functionDepth: 15
    functionLinenumber: 2041
    functionLinenumberEnd: 2128
    functionName: ChapterAtomElement::into_chapter_group_item
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - Tag::new_std
    - TargetUid::Chapter
    - get
    - into_chapter_group_item
    - is_some
    - push
    - Option::clone
    - Tag::new_from_parts
    - ChapterGroupItem::Group
    - map
    - Result::get
    - Time::from_nanos_u64
    - len
    - '&mut TargetTagsMap::remove'
    - StandardTag::ChapterTitle
    - Self::into_boxed_slice
    - unwrap_or_else
    - RawTag::new_with_sub_fields
    - is_empty
    - Vec::with_capacity
    - ChapterGroupItem::Chapter
    - RawTagSubField::new
    - Arc::new
    - Self::push
    linkageType: ''
    returnType: ChapterGroupItem
    signature: 'pub(crate) fn into_chapter_group_item(self,target_tags: &mut TargetTagsMap,)
      -> ChapterGroupItem'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2148,1
    - Dst: Result::element_type
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2149,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2152,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2152,1
    - Dst: io::Result::read_string
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2156,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2160,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2160,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2164,1
    - Dst: io::Result::read_string_no_default
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2164,1
    - Dst: None::unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2174,1
    - Dst: '&str::into'
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2174,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2176,1
    - Dst: String::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2177,1
    - Dst: EbmlError::ElementError
      Src: /src/symphonia/symphonia-format-mkv/src/segment.rs:2177,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 2
    argNames:
    - it
    - hdr
    argTypes:
    - '&mut MkvEbmlIterator<R>'
    - '&MkvEbmlElementHeader'
    constantsTouched: []
    func_position:
      end: 2182
      start: 2142
    functionDepth: 14
    functionLinenumber: 2142
    functionLinenumberEnd: 2182
    functionName: ChapterDisplayElement::read
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/segment.rs
    functionUses: 0
    functionsReached:
    - '&str::into'
    - None::unwrap_or_else
    - Result::element_type
    - io::Result::next_header
    - io::Result::read_string
    - Some
    - String::ok_or
    - EbmlError::ElementError
    - io::Result::read_string_no_default
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadEbml>(it: &mut MkvEbmlIterator<R>, hdr: &MkvEbmlElementHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_codec_id
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:36,1
    - Dst: get_codec_profile_and_level
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:37,1
    - Dst: make_audio_codec_params
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:40,1
    - Dst: make_video_codec_params
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:41,1
    - Dst: make_subtitle_codec_params
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:42,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - track
    argTypes:
    - TrackElement
    constantsTouched: []
    func_position:
      end: 45
      start: 34
    functionDepth: 18
    functionLinenumber: 34
    functionLinenumberEnd: 45
    functionName: make_track_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - get_codec_id
    - make_audio_codec_params
    - Ok
    - make_subtitle_codec_params
    - get_codec_profile_and_level
    - make_video_codec_params
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn make_track_codec_params(track: TrackElement) -> Result<Option<CodecParameters>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:57,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:61,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:63,1
    - Dst: Result::with_profile
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:66,1
    - Dst: Result::with_sample_rate
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:69,1
    - Dst: round
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:69,1
    - Dst: Result::with_channels
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:70,1
    - Dst: Channels::Discrete
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:70,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:70,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:72,1
    - Dst: io::Result::get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:72,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:73,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:74,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:75,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:76,1
    - Dst: Result::with_sample_format
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:81,1
    - Dst: Result::with_bits_per_sample
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:85,1
    - Dst: io::Result::get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:85,1
    - Dst: vorbis_extra_data_from_codec_private
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:90,1
    - Dst: flac_extra_data_from_codec_private
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:91,1
    - Dst: Result::with_extra_data
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:95,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:98,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:98,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:98,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 71
    argCount: 3
    argNames:
    - id
    - profile
    - track
    argTypes:
    - AudioCodecId
    - Option<CodecProfile>
    - TrackElement
    constantsTouched: []
    func_position:
      end: 99
      start: 47
    functionDepth: 14
    functionLinenumber: 47
    functionLinenumberEnd: 99
    functionName: make_audio_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - Result::with_channels
    - io::Result::get
    - Ok
    - get
    - Some
    - Result::with_sample_rate
    - CodecParameters::Audio
    - round
    - AudioCodecParameters::new
    - and_then
    - vorbis_extra_data_from_codec_private
    - Channels::Discrete
    - Result::with_bits_per_sample
    - Result::with_extra_data
    - Result::with_profile
    - Result::for_codec
    - Result::with_sample_format
    - flac_extra_data_from_codec_private
    linkageType: ''
    returnType: Result
    signature: 'fn make_audio_codec_params(id: AudioCodecId,profile: Option<CodecProfile>,track:
      TrackElement,) -> Result<Option<CodecParameters>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:112,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:118,1
    - Dst: u16::try_from
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:119,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:119,1
    - Dst: Result::map_err
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:119,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:120,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:122,1
    - Dst: u16::try_from
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:123,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:123,1
    - Dst: Result::map_err
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:123,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:124,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:126,1
    - Dst: Result::with_profile
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:130,1
    - Dst: Result::with_level
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:134,1
    - Dst: Result::add_extra_data
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:145,1
    - Dst: Result::add_extra_data
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:150,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:154,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:154,1
    - Dst: CodecParameters::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:154,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 58
    argCount: 4
    argNames:
    - id
    - profile
    - level
    - track
    argTypes:
    - VideoCodecId
    - Option<CodecProfile>
    - Option<u32>
    - TrackElement
    constantsTouched: []
    func_position:
      end: 155
      start: 101
    functionDepth: 15
    functionLinenumber: 101
    functionLinenumberEnd: 155
    functionName: make_video_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - Result::map_err
    - Error::Unsupported
    - get
    - CodecParameters::Video
    - Some
    - Result::add_extra_data
    - Result::with_profile
    - Result::with_level
    - Ok
    - Default::default
    - u16::try_from
    linkageType: ''
    returnType: Result
    signature: 'fn make_video_codec_params(id: VideoCodecId,profile: Option<CodecProfile>,level:
      Option<u32>,track: TrackElement,) -> Result<Option<CodecParameters>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SubtitleCodecParameters::new
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:161,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:163,1
    - Dst: Result::with_extra_data
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:166,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:169,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:169,1
    - Dst: CodecParameters::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - id
    - track
    argTypes:
    - SubtitleCodecId
    - TrackElement
    constantsTouched: []
    func_position:
      end: 170
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 170
    functionName: make_subtitle_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - CodecParameters::Subtitle
    - Some
    - Result::with_extra_data
    - SubtitleCodecParameters::new
    - Ok
    - Result::for_codec
    linkageType: ''
    returnType: Result
    signature: 'fn make_subtitle_codec_params(id: SubtitleCodecId,track: TrackElement,)
      -> Result<Option<CodecParameters>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:185,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:186,1
    - Dst: lacing::read_xiph_sizes
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:187,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:189,1
    - Dst: PagePackets::push
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:191,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:191,1
    - Dst: '&[u8]::len'
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:194,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:194,1
    - Dst: PagePackets::push
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:195,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:195,1
    - Dst: Result::first
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:201,1
    - Dst: copied
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:201,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:203,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:206,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:215,1
    - Dst: Result::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:216,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:216,1
    - Dst: None::ok_or
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:217,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:217,1
    - Dst: concat
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:215,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:215,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 59
    argCount: 1
    argNames:
    - extra
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 221
      start: 173
    functionDepth: 13
    functionLinenumber: 173
    functionLinenumberEnd: 221
    functionName: vorbis_extra_data_from_codec_private
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - '&[u8]::len'
    - PagePackets::push
    - Result::first
    - None::ok_or
    - concat
    - Result::pos
    - Result::ok_or
    - Some
    - Error::DecodeError
    - Result::read_byte
    - Vec::new
    - into_boxed_slice
    - Result::read_boxed_slice_exact
    - lacing::read_xiph_sizes
    - BufReader::new
    - Ok
    - copied
    linkageType: ''
    returnType: Result
    signature: 'fn vorbis_extra_data_from_codec_private(extra: &[u8]) -> Result<Box<[u8]>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:224,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:226,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:228,1
    - Dst: MetadataBlockHeader::read
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:234,1
    - Dst: StreamInfo::is_valid_size
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:239,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:239,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:240,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:243,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:243,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:245,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:245,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 1
    argNames:
    - codec_private
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 248
      start: 223
    functionDepth: 13
    functionLinenumber: 223
    functionLinenumberEnd: 248
    functionName: flac_extra_data_from_codec_private
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - u64::from
    - Result::read_quad_bytes
    - MetadataBlockHeader::read
    - Result::read_boxed_slice_exact
    - BufReader::new
    - StreamInfo::is_valid_size
    - Ok
    - symphonia_core::errors::decode_error
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn flac_extra_data_from_codec_private(codec_private: &[u8]) -> Result<Box<[u8]>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:251,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:251,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:253,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:255,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:256,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:257,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:258,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:259,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:260,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:263,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:264,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:265,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:266,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:267,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:268,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:269,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:272,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:273,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:274,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:275,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:276,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:277,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:278,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:279,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:280,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:281,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:282,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:283,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:284,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:287,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:288,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:289,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:290,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:293,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:294,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:295,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:304,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:305,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:306,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:307,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:308,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:309,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:310,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:311,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:312,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:313,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:314,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:315,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:316,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:317,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:318,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:319,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:320,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:328,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:329,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:330,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:331,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:332,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:333,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:334,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:335,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:336,1
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:337,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:347,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 87
    argCount: 1
    argNames:
    - track
    argTypes:
    - '&TrackElement'
    constantsTouched: []
    func_position:
      end: 348
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 348
    functionName: get_codec_id
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - CodecId::Subtitle
    - CodecId::Video
    - as_str
    - get
    - as_ref
    - Some
    - and_then
    - CodecId::Audio
    linkageType: ''
    returnType: Option
    signature: 'fn get_codec_id(track: &TrackElement) -> Option<CodecId>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_str
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:359,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:361,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:362,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:363,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:364,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:365,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:368,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:369,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:372,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:372,1
    - Dst: AVCDecoderConfigurationRecord::read
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:375,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:375,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:372,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:376,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:376,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:372,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:381,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:381,1
    - Dst: HEVCDecoderConfigurationRecord::read
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:384,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:384,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:381,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:385,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:385,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-format-mkv/src/codecs.rs:381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 62
    argCount: 1
    argNames:
    - track
    argTypes:
    - '&TrackElement'
    constantsTouched: []
    func_position:
      end: 392
      start: 350
    functionDepth: 17
    functionLinenumber: 350
    functionLinenumberEnd: 392
    functionName: get_codec_profile_and_level
    functionSourceFile: /src/symphonia/symphonia-format-mkv/src/codecs.rs
    functionUses: 1
    functionsReached:
    - as_str
    - HEVCDecoderConfigurationRecord::read
    - Result::ok
    - as_ref
    - Some
    - unwrap_or_else
    - map
    - AVCDecoderConfigurationRecord::read
    - and_then
    linkageType: ''
    returnType: (Option
    signature: 'fn get_codec_profile_and_level(track: &TrackElement) -> (Option<CodecProfile>,
      Option<u32>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:36,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:37,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:51,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:51,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:52,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:55,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:58,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:59,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:60,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:61,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:62,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:63,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:64,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:65,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:66,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:67,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:68,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:69,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:74,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:79,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:85,1
    - Dst: Result::byte_len
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:90,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:92,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:93,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:97,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:98,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:102,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:103,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:108,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:125,1
    - Dst: count
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:130,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:131,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:137,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:137,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:138,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:162,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/apple/audio/alac.rs:169,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 174
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 170
      start: 34
    functionDepth: 14
    functionLinenumber: 34
    functionLinenumberEnd: 170
    functionName: MagicCookie::read
    functionSourceFile: /src/symphonia/symphonia-common/src/apple/audio/alac.rs
    functionUses: 2
    functionsReached:
    - Result::byte_len
    - symphonia_core::errors::unsupported_error
    - Result::read_u8
    - Result::read_quad_bytes
    - Result::read_be_u16
    - BufReader::new
    - Ok
    - Default::default
    - symphonia_core::errors::decode_error
    - Result::read_be_u32
    - count
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(mut buf: &[u8]) -> Result<MagicCookie>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:60,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 1
    argNames:
    - num_channels
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 61
      start: 12
    functionDepth: 0
    functionLinenumber: 12
    functionLinenumberEnd: 61
    functionName: vorbis_channels_to_channels
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 1
    functionsReached:
    - Channels::Positioned
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub fn vorbis_channels_to_channels(num_channels: u8) -> Option<Channels>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::split_first
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:73,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:75,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:79,1
    - Dst: iter
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:82,1
    - Dst: next
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:86,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:88,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:90,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:92,1
    - Dst: as_slice
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:101,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:102,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:103,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:106,1
    - Dst: len
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:107,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:108,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:113,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 63
    argCount: 1
    argNames:
    - extradata
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 114
      start: 72
    functionDepth: 11
    functionLinenumber: 72
    functionLinenumberEnd: 114
    functionName: unpack_xiph_laced_extradata
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 8
    functionsReached:
    - len
    - next
    - Ok
    - iter
    - Result::split_first
    - checked_add
    - symphonia_core::errors::decode_error
    - as_slice
    - is_empty
    linkageType: ''
    returnType: Result
    signature: 'pub fn unpack_xiph_laced_extradata(extradata: &[u8]) -> Result<(&[u8],
      &[u8])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:126,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:127,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:128,1
    - Dst: len
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:128,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:129,1
    - Dst: len
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:129,1
    - Dst: Result::extend_from_slice
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:130,1
    - Dst: Result::extend_from_slice
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:131,1
    - Dst: Result::extend_from_slice
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:132,1
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:134,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 137
      start: 121
    functionDepth: 10
    functionLinenumber: 121
    functionLinenumberEnd: 137
    functionName: tests::test_unpack_xiph_laced_extradata_valid
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 0
    functionsReached:
    - len
    - Result::extend_from_slice
    - Result::push
    - Vec::new
    - unpack_xiph_laced_extradata
    - Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn test_unpack_xiph_laced_extradata_valid()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:144,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:145,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:146,1
    - Dst: len
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:146,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:147,1
    - Dst: len
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:147,1
    - Dst: Result::extend_from_slice
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:148,1
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 152
      start: 140
    functionDepth: 10
    functionLinenumber: 140
    functionLinenumberEnd: 152
    functionName: tests::test_unpack_xiph_laced_extradata_truncated
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 0
    functionsReached:
    - len
    - Result::extend_from_slice
    - Result::push
    - Vec::new
    - unpack_xiph_laced_extradata
    linkageType: ''
    returnType: void
    signature: fn test_unpack_xiph_laced_extradata_truncated()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:158,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:159,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:160,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:161,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:162,1
    - Dst: Result::extend_from_slice
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:163,1
    - Dst: Result::extend_from_slice
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:164,1
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:166,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 170
      start: 155
    functionDepth: 10
    functionLinenumber: 155
    functionLinenumberEnd: 170
    functionName: tests::test_unpack_xiph_laced_extradata_large_sizes
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 0
    functionsReached:
    - Result::extend_from_slice
    - Result::push
    - Vec::new
    - Result::unwrap
    - unpack_xiph_laced_extradata
    linkageType: ''
    returnType: void
    signature: fn test_unpack_xiph_laced_extradata_large_sizes()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 12
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: tests::test_unpack_xiph_laced_extradata_empty
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 0
    functionsReached:
    - unpack_xiph_laced_extradata
    linkageType: ''
    returnType: void
    signature: fn test_unpack_xiph_laced_extradata_empty()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 183
      start: 179
    functionDepth: 12
    functionLinenumber: 179
    functionLinenumberEnd: 183
    functionName: tests::test_unpack_xiph_laced_extradata_invalid_count
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 0
    functionsReached:
    - unpack_xiph_laced_extradata
    linkageType: ''
    returnType: void
    signature: fn test_unpack_xiph_laced_extradata_invalid_count()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 191
      start: 186
    functionDepth: 12
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionName: tests::test_unpack_xiph_laced_extradata_truncated_lacing
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 0
    functionsReached:
    - unpack_xiph_laced_extradata
    linkageType: ''
    returnType: void
    signature: fn test_unpack_xiph_laced_extradata_truncated_lacing()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 199
      start: 194
    functionDepth: 12
    functionLinenumber: 194
    functionLinenumberEnd: 199
    functionName: tests::test_unpack_xiph_laced_extradata_no_data_after_lacing
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
    functionUses: 0
    functionsReached:
    - unpack_xiph_laced_extradata
    linkageType: ''
    returnType: void
    signature: fn test_unpack_xiph_laced_extradata_no_data_after_lacing()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:29,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:32,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:37,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:39,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:43,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:46,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:51,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:54,1
    - Dst: Result::read_i16
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:57,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:60,1
    - Dst: 'symphonia_core::

        errors::decode_error'
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:111,1
    - Dst: 'symphonia_core::

        errors::unsupported_error'
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:114,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:117,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs:119,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 83
    argCount: 2
    argNames:
    - reader
    - max_version
    argTypes:
    - '&mut B'
    - u8
    constantsTouched: []
    func_position:
      end: 124
      start: 26
    functionDepth: 13
    functionLinenumber: 26
    functionLinenumberEnd: 124
    functionName: OpusHead::read
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs
    functionUses: 1
    functionsReached:
    - Result::read_u32
    - 'symphonia_core::

      errors::unsupported_error'
    - Result::read_i16
    - Result::read_buf_exact
    - 'symphonia_core::

      errors::decode_error'
    - Result::read_byte
    - Result::read_u16
    - Channels::Positioned
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBytes>(reader: &mut B, max_version: u8) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 31
    argCount: 1
    argNames:
    - channels
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 75
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 75
    functionName: flac_channels_to_channels
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs
    functionUses: 1
    functionsReached:
    - Channels::Positioned
    linkageType: ''
    returnType: Channels
    signature: 'fn flac_channels_to_channels(channels: u32) -> Channels'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:114,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:115,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:119,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:124,1
    - Dst: Result::read_be_u24
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:130,1
    - Dst: Result::read_be_u24
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:131,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:140,1
    - Dst: BitStreamLtr::new
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:145,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:148,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:151,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:155,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:158,1
    - Dst: flac_channels_to_channels
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:161,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:164,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:167,1
    - Dst: Self::read_bits_leq64
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:172,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:174,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:179,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:182,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:185,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 130
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 186
      start: 100
    functionDepth: 14
    functionLinenumber: 100
    functionLinenumberEnd: 186
    functionName: StreamInfo::read
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs
    functionUses: 3
    functionsReached:
    - Self::read_bits_leq64
    - Result::read_buf_exact
    - Some
    - Result::read_be_u16
    - Result::read_be_u24
    - flac_channels_to_channels
    - Self::read_bits_leq32
    - Ok
    - symphonia_core::errors::decode_error
    - BitStreamLtr::new
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBytes>(reader: &mut B) -> Result<StreamInfo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - size
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 193
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 193
    functionName: StreamInfo::is_valid_size
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn is_valid_size(size: u64) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:205,1
    - Dst: MetadataBlockType::Unknown
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:221,1
    - Dst: Result::read_be_u24
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:224,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs:226,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 227
      start: 204
    functionDepth: 14
    functionLinenumber: 204
    functionLinenumberEnd: 227
    functionName: MetadataBlockHeader::read
    functionSourceFile: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs
    functionUses: 4
    functionsReached:
    - MetadataBlockType::Unknown
    - Result::read_be_u24
    - Result::read_u8
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBytes>(reader: &mut B) -> Result<MetadataBlockHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:19,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:25,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:28,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:34,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:35,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:36,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:38,1
    - Dst: CodecProfile::new
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:39,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 42
      start: 18
    functionDepth: 16
    functionLinenumber: 18
    functionLinenumberEnd: 42
    functionName: AVCDecoderConfigurationRecord::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs
    functionUses: 2
    functionsReached:
    - BitReaderLtr::new
    - Self::read_bits_leq32
    - Ok
    - symphonia_core::errors::decode_error
    - CodecProfile::new
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(buf: &[u8]) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:52,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:58,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:61,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:66,1
    - Dst: Self::read_bit
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:67,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:68,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:69,1
    - Dst: Self::read_bits_leq64
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:70,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:71,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:73,1
    - Dst: CodecProfile::new
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:74,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 77
      start: 51
    functionDepth: 16
    functionLinenumber: 51
    functionLinenumberEnd: 77
    functionName: HEVCDecoderConfigurationRecord::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs
    functionUses: 2
    functionsReached:
    - Self::read_bits_leq64
    - Self::read_bit
    - BitReaderLtr::new
    - Self::read_bits_leq32
    - Ok
    - symphonia_core::errors::decode_error
    - CodecProfile::new
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(buf: &[u8]) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:94,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:100,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:101,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:102,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:103,1
    - Dst: Self::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:104,1
    - Dst: Self::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:105,1
    - Dst: Self::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:106,1
    - Dst: Self::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:107,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs:110,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 111
      start: 93
    functionDepth: 16
    functionLinenumber: 93
    functionLinenumberEnd: 111
    functionName: DOVIDecoderConfigurationRecord::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs
    functionUses: 0
    functionsReached:
    - Self::read_bits_leq32
    - Ok
    - BitReaderLtr::new
    - Self::read_bool
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(buf: &[u8]) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:33,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:34,1
    - Dst: ClassTag::UserPrivate
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:41,1
    - Dst: ClassTag::Unknown
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:42,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:48,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:49,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:55,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 56
      start: 32
    functionDepth: 14
    functionLinenumber: 32
    functionLinenumberEnd: 56
    functionName: read_object_descriptor_header
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs
    functionUses: 4
    functionsReached:
    - ClassTag::UserPrivate
    - u64::from
    - Result::read_u8
    - ClassTag::Unknown
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_object_descriptor_header<B: ReadBytes>(reader: &mut B)
      -> Result<(ClassTag, u64)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:102,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:104,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:105,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:106,1
    - Dst: CodecId::Audio
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:107,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:113,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:114,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:115,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:116,1
    - Dst: CodecId::Video
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:117,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - obj_type
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 125
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 125
    functionName: codec_id_from_object_type_indication
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs
    functionUses: 2
    functionsReached:
    - CodecId::Audio
    - Some
    - CodecId::Video
    linkageType: ''
    returnType: Option
    signature: 'pub fn codec_id_from_object_type_indication(obj_type: u8) -> Option<CodecId>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:170,1
    - Dst: Self::read_be_u16
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:172,1
    - Dst: Self::read_u8
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:173,1
    - Dst: Self::read_u16
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:177,1
    - Dst: Self::read_u8
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:182,1
    - Dst: Self::ignore_bytes
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:183,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:183,1
    - Dst: Self::read_u16
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:188,1
    - Dst: Self::bytes_available
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:195,1
    - Dst: read_object_descriptor_header
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:196,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:200,1
    - Dst: DecoderConfigDescriptor::read
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:200,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:203,1
    - Dst: SLConfigDescriptor::read
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:203,1
    - Dst: Self::ignore_bytes
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:207,1
    - Dst: Self::ignore
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:213,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:218,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:224,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:227,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 72
    argCount: 2
    argNames:
    - reader
    - len
    argTypes:
    - '&mut B'
    - u64
    constantsTouched: []
    func_position:
      end: 228
      start: 167
    functionDepth: 14
    functionLinenumber: 167
    functionLinenumberEnd: 228
    functionName: ESDescriptor::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs
    functionUses: 2
    functionsReached:
    - Self::ignore
    - u64::from
    - Some
    - Self::read_be_u16
    - DecoderConfigDescriptor::read
    - Self::ignore_bytes
    - Self::read_u8
    - ScopedStream::new
    - read_object_descriptor_header
    - Self::bytes_available
    - Self::read_u16
    - Ok
    - symphonia_core::errors::decode_error
    - SLConfigDescriptor::read
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBytes>(reader: &mut B, len: u64) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:256,1
    - Dst: Self::read_u8
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:258,1
    - Dst: Self::read_u8
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:261,1
    - Dst: Self::read_be_u24
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:270,1
    - Dst: Self::read_be_u32
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:271,1
    - Dst: Self::read_be_u32
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:272,1
    - Dst: Self::bytes_available
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:277,1
    - Dst: read_object_descriptor_header
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:278,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:282,1
    - Dst: DecoderSpecificInfo::read
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:282,1
    - Dst: Self::ignore_bytes
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:286,1
    - Dst: Self::ignore
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:292,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:294,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 55
    argCount: 2
    argNames:
    - reader
    - len
    argTypes:
    - '&mut B'
    - u64
    constantsTouched: []
    func_position:
      end: 298
      start: 253
    functionDepth: 14
    functionLinenumber: 253
    functionLinenumberEnd: 298
    functionName: DecoderConfigDescriptor::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs
    functionUses: 1
    functionsReached:
    - DecoderSpecificInfo::read
    - Self::read_be_u24
    - Some
    - Self::ignore_bytes
    - Self::read_be_u32
    - Self::read_u8
    - ScopedStream::new
    - read_object_descriptor_header
    - Self::bytes_available
    - Ok
    - Self::ignore
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBytes>(reader: &mut B, len: u64) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:309,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - reader
    - len
    argTypes:
    - '&mut B'
    - u64
    constantsTouched: []
    func_position:
      end: 310
      start: 308
    functionDepth: 13
    functionLinenumber: 308
    functionLinenumberEnd: 310
    functionName: DecoderSpecificInfo::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Result::read_boxed_slice_exact
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBytes>(reader: &mut B, len: u64) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:360,1
    - Dst: Self::read_u8
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:363,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:366,1
    - Dst: Self::ignore
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:371,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs:373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - reader
    - len
    argTypes:
    - '&mut B'
    - u64
    constantsTouched: []
    func_position:
      end: 374
      start: 353
    functionDepth: 14
    functionLinenumber: 353
    functionLinenumberEnd: 374
    functionName: SLConfigDescriptor::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::unsupported_error
    - Self::read_u8
    - ScopedStream::new
    - Ok
    - Self::ignore
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBytes>(reader: &mut B, len: u64) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: AudioObjectType::fmt
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:161,1
    - Dst: copied
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - index
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: get_mpeg4_audio_object_type_by_index
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 1
    functionsReached:
    - get
    - copied
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_mpeg4_audio_object_type_by_index(index: u32) -> Option<AudioObjectType>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Mpeg4AudioSampleRate::SampleRate
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - index
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 187
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 187
    functionName: get_mpeg4_audio_sample_rate_by_index
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 2
    functionsReached:
    - Mpeg4AudioSampleRate::SampleRate
    linkageType: ''
    returnType: Mpeg4AudioSampleRate
    signature: 'pub fn get_mpeg4_audio_sample_rate_by_index(index: u32) -> Mpeg4AudioSampleRate'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Mpeg4AudioChannels::Channels
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 214
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 214
    functionName: get_mpeg4_audio_channels_by_config_index
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 2
    functionsReached:
    - Mpeg4AudioChannels::Channels
    linkageType: ''
    returnType: Mpeg4AudioChannels
    signature: 'pub fn get_mpeg4_audio_channels_by_config_index(index: u32) -> Mpeg4AudioChannels'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:232,1
    - Dst: Self::read_audio_object_type
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:235,1
    - Dst: Self::read_sampling_frequency
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:236,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:237,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:241,1
    - Dst: Self::read_channel_config
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:244,1
    - Dst: Self::read_sampling_frequency
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:251,1
    - Dst: Self::read_audio_object_type
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:252,1
    - Dst: Self::read_channel_config
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:255,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:261,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:277,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:281,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:284,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:287,1
    - Dst: is_none
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:289,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:290,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:296,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:301,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:302,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:310,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:311,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:312,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:315,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:318,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:323,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:326,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:329,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:335,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:338,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:341,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:344,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:347,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:351,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:354,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:357,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:361,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:364,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:367,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:370,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:387,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:390,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:400,1
    - Dst: i32::bits_left
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:400,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:401,1
    - Dst: Self::read_audio_object_type
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:404,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:406,1
    - Dst: Self::read_sampling_frequency
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:408,1
    - Dst: i32::bits_left
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:409,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:410,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:412,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:418,1
    - Dst: Self::read_sampling_frequency
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:420,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:422,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:427,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 280
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 428
      start: 231
    functionDepth: 17
    functionLinenumber: 231
    functionLinenumberEnd: 428
    functionName: AudioSpecificConfig::read
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 2
    functionsReached:
    - Self::read_audio_object_type
    - i32::read_bits_leq32
    - symphonia_core::errors::unsupported_error
    - Some
    - Self::read_channel_config
    - is_some
    - i32::read_bool
    - i32::bits_left
    - BitReaderLtr::new
    - Self::read_sampling_frequency
    - Ok
    - Default::default
    - symphonia_core::errors::decode_error
    - is_none
    linkageType: ''
    returnType: Result
    signature: 'pub fn read(buf: &[u8]) -> Result<AudioSpecificConfig>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:431,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:433,1
    - Dst: get
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:437,1
    - Dst: copied
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:437,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:437,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:439,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 440
      start: 430
    functionDepth: 16
    functionLinenumber: 430
    functionLinenumberEnd: 440
    functionName: AudioSpecificConfig::read_audio_object_type
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - get
    - Ok
    - unwrap_or
    - copied
    linkageType: ''
    returnType: Result
    signature: 'fn read_audio_object_type<B: ReadBitsLtr>(bs: &mut B) -> Result<AudioObjectType>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:443,1
    - Dst: get_mpeg4_audio_sample_rate_by_index
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:444,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:446,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:448,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:451,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 452
      start: 442
    functionDepth: 16
    functionLinenumber: 442
    functionLinenumberEnd: 452
    functionName: AudioSpecificConfig::read_sampling_frequency
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - symphonia_core::errors::decode_error
    - get_mpeg4_audio_sample_rate_by_index
    linkageType: ''
    returnType: Result
    signature: 'fn read_sampling_frequency<B: ReadBitsLtr>(bs: &mut B) -> Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:455,1
    - Dst: get_mpeg4_audio_channels_by_config_index
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:456,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:457,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:460,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:463,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 464
      start: 454
    functionDepth: 16
    functionLinenumber: 454
    functionLinenumberEnd: 464
    functionName: AudioSpecificConfig::read_channel_config
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - Some
    - Ok
    - symphonia_core::errors::decode_error
    - get_mpeg4_audio_channels_by_config_index
    linkageType: ''
    returnType: Result
    signature: 'fn read_channel_config<B: ReadBitsLtr>(bs: &mut B) -> Result<Option<Channels>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:469,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:470,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:471,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:474,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:477,1
    - Dst: Some
      Src: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs:480,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - asc
    argTypes:
    - '&AudioSpecificConfig'
    constantsTouched: []
    func_position:
      end: 485
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 485
    functionName: get_audio_codec_profile
    functionSourceFile: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
    functionUses: 1
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_audio_codec_profile(asc: &AudioSpecificConfig) -> Option<CodecProfile>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:92,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:92,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:94,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:94,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:97,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:97,1
    - Dst: '&dyn StreamSegment::track_sample_range'
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:99,1
    - Dst: '&dyn StreamSegment::track_ts_range'
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:100,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:101,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:105,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:105,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:112,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:114,1
    - Dst: total_duration
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:115,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:119,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:122,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 65
    argCount: 3
    argNames:
    - moof
    - moov
    - prev
    argTypes:
    - MoofAtom
    - Arc<MoovAtom>
    - '&dyn StreamSegment'
    constantsTouched: []
    func_position:
      end: 126
      start: 91
    functionDepth: 11
    functionLinenumber: 91
    functionLinenumberEnd: 126
    functionName: MoofSegment::new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 1
    functionsReached:
    - push
    - expect
    - '&dyn StreamSegment::track_sample_range'
    - len
    - unwrap_or
    - total_duration
    - as_ref
    - Some
    - iter
    - '&dyn StreamSegment::track_ts_range'
    - Default::default
    - enumerate
    - Vec::with_capacity
    linkageType: ''
    returnType: MoofSegment
    signature: 'pub fn new(moof: MoofAtom, moov: Arc<MoovAtom>, prev: &dyn StreamSegment)
      -> MoofSegment'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - track_num
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 132
      start: 129
    functionDepth: 9
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionName: MoofSegment::try_get_traf
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 3
    functionsReached:
    - map
    linkageType: ''
    returnType: Option
    signature: 'fn try_get_traf(&self, track_num: usize) -> Option<&TrafAtom>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: MoofSegment::sequence_num
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: fn sequence_num(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: MoofSegment::all_tracks_ended
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn all_tracks_ended(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MoofSegment::try_get_traf
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:147,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:149,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:155,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:157,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:159,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:164,1
    - Dst: sample_timing
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:168,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:169,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:169,1
    - Dst: total_duration
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:172,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:178,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 49
    argCount: 2
    argNames:
    - track_num
    - sample_num
    argTypes:
    - usize
    - u32
    constantsTouched: []
    func_position:
      end: 179
      start: 145
    functionDepth: 10
    functionLinenumber: 145
    functionLinenumberEnd: 179
    functionName: MoofSegment::sample_timing
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached:
    - unwrap_or
    - total_duration
    - sample_timing
    - as_ref
    - Some
    - iter
    - MoofSegment::try_get_traf
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn sample_timing(&self, track_num: usize, sample_num: u32) -> Result<Option<SampleTiming>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MoofSegment::try_get_traf
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:183,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:185,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:191,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:193,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:195,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:200,1
    - Dst: total_duration
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:202,1
    - Dst: ts_sample
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:207,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:208,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:208,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:215,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 48
    argCount: 2
    argNames:
    - track_num
    - ts
    argTypes:
    - usize
    - u64
    constantsTouched: []
    func_position:
      end: 216
      start: 181
    functionDepth: 10
    functionLinenumber: 181
    functionLinenumberEnd: 216
    functionName: MoofSegment::ts_sample
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached:
    - unwrap_or
    - total_duration
    - ts_sample
    - as_ref
    - Some
    - iter
    - MoofSegment::try_get_traf
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn ts_sample(&self, track_num: usize, ts: u64) -> Result<Option<u32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MoofSegment::try_get_traf
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:225,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:227,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:240,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:242,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:245,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:247,1
    - Dst: Result::is_negative
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:254,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:255,1
    - Dst: Result::wrapping_abs
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:255,1
    - Dst: sample_offset
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:265,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:266,1
    - Dst: sample_size
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:270,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:274,1
    - Dst: total_size
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:278,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:284,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 70
    argCount: 3
    argNames:
    - track_num
    - sample_num
    - get_offset
    argTypes:
    - usize
    - u32
    - bool
    constantsTouched: []
    func_position:
      end: 285
      start: 218
    functionDepth: 10
    functionLinenumber: 218
    functionLinenumberEnd: 285
    functionName: MoofSegment::sample_data
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached:
    - Result::is_negative
    - unwrap_or
    - total_size
    - u64::from
    - Result::wrapping_abs
    - as_ref
    - Some
    - iter
    - sample_offset
    - MoofSegment::try_get_traf
    - sample_size
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn sample_data(&self,track_num: usize,sample_num: u32,get_offset:
      bool,) -> Result<SampleDataDesc>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - track_num
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 292
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 292
    functionName: MoofSegment::track_sample_range
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Range
    signature: 'fn track_sample_range(&self, track_num: usize) -> Range<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - track_num
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 299
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 299
    functionName: MoofSegment::track_ts_range
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Range
    signature: 'fn track_ts_range(&self, track_num: usize) -> Range<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&Option<StcoAtom>::as_ref'
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:308,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:310,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:311,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:311,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:311,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:314,1
    - Dst: '&Option<Co64Atom>::as_ref'
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:317,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:319,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:320,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:320,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:323,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:328,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - stco
    - co64
    - chunk
    argTypes:
    - '&Option<StcoAtom>'
    - '&Option<Co64Atom>'
    - usize
    constantsTouched: []
    func_position:
      end: 330
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 330
    functionName: get_chunk_offset
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 1
    functionsReached:
    - '&Option<Co64Atom>::as_ref'
    - u64::from
    - get
    - '&Option<StcoAtom>::as_ref'
    - Some
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn get_chunk_offset(stco: &Option<StcoAtom>,co64: &Option<Co64Atom>,chunk:
      usize,) -> Result<Option<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - moov
    argTypes:
    - Arc<MoovAtom>
    constantsTouched: []
    func_position:
      end: 340
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 340
    functionName: MoovSegment::new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MoovSegment
    signature: 'pub fn new(moov: Arc<MoovAtom>) -> MoovSegment'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 347
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 347
    functionName: MoovSegment::sequence_num
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: fn sequence_num(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_fragmented
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:351,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 363
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 363
    functionName: MoovSegment::all_tracks_ended
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached:
    - is_fragmented
    linkageType: ''
    returnType: bool
    signature: fn all_tracks_ended(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: find_timing_for_sample
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:372,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:374,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:374,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - track_num
    - sample_num
    argTypes:
    - usize
    - u32
    constantsTouched: []
    func_position:
      end: 375
      start: 365
    functionDepth: 2
    functionLinenumber: 365
    functionLinenumberEnd: 375
    functionName: MoovSegment::sample_timing
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Some
    - find_timing_for_sample
    linkageType: ''
    returnType: Result
    signature: 'fn sample_timing(&self, track_num: usize, sample_num: u32) -> Result<Option<SampleTiming>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:384,1
    - Dst: find_sample_for_timestamp
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - track_num
    - ts
    argTypes:
    - usize
    - u64
    constantsTouched: []
    func_position:
      end: 385
      start: 377
    functionDepth: 2
    functionLinenumber: 377
    functionLinenumberEnd: 385
    functionName: MoovSegment::ts_sample
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached:
    - Ok
    - find_sample_for_timestamp
    linkageType: ''
    returnType: Result
    signature: 'fn ts_sample(&self, track_num: usize, ts: u64) -> Result<Option<u32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: find_entry_for_sample
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:405,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:405,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:407,1
    - Dst: get_chunk_offset
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:419,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:421,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:434,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:434,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:441,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:442,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:442,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:442,1
    - Dst: Option::sum
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:442,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:445,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:450,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:460,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:464,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/stream.rs:469,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 87
    argCount: 3
    argNames:
    - track_num
    - sample_num
    - get_offset
    argTypes:
    - usize
    - u32
    - bool
    constantsTouched: []
    func_position:
      end: 470
      start: 387
    functionDepth: 11
    functionLinenumber: 387
    functionLinenumberEnd: 470
    functionName: MoovSegment::sample_data
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - get
    - Option::sum
    - Some
    - get_chunk_offset
    - Error::DecodeError
    - find_entry_for_sample
    - map
    - Result::iter
    - Ok
    - symphonia_core::errors::decode_error
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn sample_data(&self,track_num: usize,sample_num: u32,get_offset:
      bool,) -> Result<SampleDataDesc>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - track_num
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 476
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 476
    functionName: MoovSegment::track_sample_range
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Range
    signature: 'fn track_sample_range(&self, track_num: usize) -> Range<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - track_num
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 482
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 482
    functionName: MoovSegment::track_ts_range
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Range
    signature: 'fn track_ts_range(&self, track_num: usize) -> Range<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Track::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:53,1
    - Dst: make_codec_params
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:56,1
    - Dst: Result::with_codec_params
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:57,1
    - Dst: Result::with_time_base
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:61,1
    - Dst: TimeBase::from_recip
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:62,1
    - Dst: '&mut Self::with_duration'
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:61,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:71,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:72,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:72,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 45
    argCount: 3
    argNames:
    - track_num
    - trak
    - timespan
    argTypes:
    - usize
    - '&TrakAtom'
    - '&TimeSpan'
    constantsTouched: []
    func_position:
      end: 86
      start: 52
    functionDepth: 11
    functionLinenumber: 52
    functionLinenumberEnd: 86
    functionName: TrackState::make
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - make_codec_params
    - get
    - Result::with_time_base
    - '&mut Self::with_duration'
    - Result::with_codec_params
    - TimeBase::from_recip
    - Track::new
    - Result::with_num_frames
    linkageType: ''
    returnType: (Self, Track)
    signature: 'pub fn make(track_num: usize, trak: &TrakAtom, timespan: &TimeSpan)
      -> (Self, Track)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:124,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 10
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: TimeSpan::default
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Self::expect
    - NonZero::new
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - timescale
    - duration
    argTypes:
    - NonZero<u32>
    - Duration
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: TimeSpan::new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(timescale: NonZero<u32>, duration: Duration) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::seek_buffered_rel
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:153,1
    - Dst: Option::is_seekable
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:155,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:162,1
    - Dst: Option::seek
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:163,1
    - Dst: SeekFrom::End
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:163,1
    - Dst: Option::seek
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:164,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:164,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:166,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:172,1
    - Dst: AtomIterator::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:175,1
    - Dst: HashMap::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:178,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:180,1
    - Dst: Result::atom_type
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:182,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:184,1
    - Dst: read_atom::<FtypAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:184,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:187,1
    - Dst: read_atom::<MoovAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:187,1
    - Dst: read_atom::<SidxAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:190,1
    - Dst: Self::entry
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:193,1
    - Dst: or_insert
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:193,1
    - Dst: TimeSpan::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:195,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:198,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:205,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:207,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:205,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:208,1
    - Dst: None::is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:218,1
    - Dst: None::is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:218,1
    - Dst: read_atom::<MetaAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:229,1
    - Dst: take_metadata
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:231,1
    - Dst: Metadata::push
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:232,1
    - Dst: None::is_none
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:243,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:244,1
    - Dst: None::is_none
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:247,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:248,1
    - Dst: io::Result::pending
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:255,1
    - Dst: Option::is_none
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:255,1
    - Dst: io::Result::into_inner
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:256,1
    - Dst: Option::seek
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:257,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:257,1
    - Dst: AtomIterator::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:259,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:261,1
    - Dst: Result::atom_type
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:262,1
    - Dst: io::Result::pending
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:270,1
    - Dst: Result::atom_type
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:271,1
    - Dst: io::Result::seek_atom_start
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:272,1
    - Dst: None::expect
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:276,1
    - Dst: None::is_fragmented
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:278,1
    - Dst: Self::is_empty
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:279,1
    - Dst: None::take_metadata
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:287,1
    - Dst: Metadata::push
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:288,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:292,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:292,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:293,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:293,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:295,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:295,1
    - Dst: None::is_fragmented
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:297,1
    - Dst: Self::get
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:300,1
    - Dst: u64::map
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:300,1
    - Dst: TimeSpan::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:302,1
    - Dst: Option::unwrap_or_else
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:300,1
    - Dst: TimeSpan::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:304,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:304,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:313,1
    - Dst: TimeSpan::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:315,1
    - Dst: TrackState::make
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:318,1
    - Dst: '&[Track]::push'
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:320,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:321,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:326,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:326,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:327,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:332,1
    - Dst: MediaInfo::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:337,1
    - Dst: '&MediaInfo::with_time_base'
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:338,1
    - Dst: TimeBase::from_recip
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:338,1
    - Dst: '&MediaInfo::with_duration'
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:339,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:339,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:341,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 270
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 342
      start: 151
    functionDepth: 12
    functionLinenumber: 151
    functionLinenumberEnd: 342
    functionName: IsoMp4Reader::try_new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Self::get
    - None::is_some
    - symphonia_core::errors::unsupported_error
    - Option::unwrap_or_else
    - iter
    - Ok
    - Option::seek_buffered_rel
    - symphonia_core::errors::decode_error
    - push
    - unwrap_or_default
    - MediaInfo::new
    - None::expect
    - None::is_none
    - Option::seek
    - io::Result::next_header
    - Metadata::push
    - io::Result::into_inner
    - io::Result::pending
    - Option::pos
    - read_atom::<MetaAtom>
    - checked_add
    - enumerate
    - read_atom::<FtypAtom>
    - len
    - '&MediaInfo::with_duration'
    - Self::is_empty
    - Result::atom_type
    - u64::map
    - Some
    - take_metadata
    - None::is_fragmented
    - Self::entry
    - io::Result::seek_atom_start
    - read_atom::<MoovAtom>
    - read_atom::<SidxAtom>
    - SeekFrom::End
    - '&MediaInfo::with_time_base'
    - Vec::with_capacity
    - or_insert
    - '&[Track]::push'
    - Option::is_none
    - into
    - Arc::new
    - Duration::from
    - HashMap::new
    - Error::DecodeError
    - Option::is_seekable
    - TimeSpan::new
    - SeekFrom::Start
    - Duration::new
    - TimeBase::from_recip
    - AtomIterator::new
    - TrackState::make
    - None::take_metadata
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:352,1
    - Dst: zip
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:352,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:354,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:358,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:358,1
    - Dst: sample_timing
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:360,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:362,1
    - Dst: ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:362,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:364,1
    - Dst: calc_time
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:367,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:369,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:382,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:387,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:401,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 402
      start: 346
    functionDepth: 11
    functionLinenumber: 346
    functionLinenumberEnd: 402
    functionName: IsoMp4Reader::next_sample_info
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - expect
    - sample_timing
    - zip
    - calc_time
    - Some
    - iter
    - ok
    - try_into
    - Ok
    - enumerate
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: fn next_sample_info(&self) -> Result<Option<NextSampleInfo>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: sample_data
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:412,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:430,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:432,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:432,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 35
    argCount: 1
    argNames:
    - info
    argTypes:
    - '&NextSampleInfo'
    constantsTouched: []
    func_position:
      end: 433
      start: 404
    functionDepth: 11
    functionLinenumber: 404
    functionLinenumberEnd: 433
    functionName: IsoMp4Reader::consume_next_sample
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Ok
    - sample_data
    - Some
    - u64::from
    linkageType: ''
    returnType: Result
    signature: 'fn consume_next_sample(&mut self, info: &NextSampleInfo) -> Result<Option<SampleDataInfo>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: last
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:440,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:440,1
    - Dst: all_tracks_ended
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:441,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:442,1
    - Dst: next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:448,1
    - Dst: is_fragmented
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:453,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:454,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:459,1
    - Dst: Result::into
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:459,1
    - Dst: Result::atom_type
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:462,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:464,1
    - Dst: iter.read_atom::<MoofAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:467,1
    - Dst: is_fragmented
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:470,1
    - Dst: last
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:473,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:473,1
    - Dst: MoofSegment::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:476,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:476,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:476,1
    - Dst: MoofSegment::sequence_num
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:479,1
    - Dst: sequence_num
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:479,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:484,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:484,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:487,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:497,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 77
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 498
      start: 435
    functionDepth: 11
    functionLinenumber: 435
    functionLinenumberEnd: 498
    functionName: IsoMp4Reader::try_read_more_segments
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - push
    - sequence_num
    - expect
    - as_ref
    - Result::into
    - MoofSegment::sequence_num
    - Result::kind
    - iter.read_atom::<MoofAtom>
    - all_tracks_ended
    - last
    - MoofSegment::new
    - Result::atom_type
    - next_header
    - Box::new
    - is_fragmented
    - Err
    - clone
    linkageType: ''
    returnType: Result
    signature: fn try_read_more_segments(&mut self) -> Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:502,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:503,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:504,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:504,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:504,1
    - Dst: IsoMp4Reader::seek_track_by_ts
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:505,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:508,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - track_num
    - time
    argTypes:
    - usize
    - Time
    constantsTouched: []
    func_position:
      end: 510
      start: 500
    functionDepth: 11
    functionLinenumber: 500
    functionLinenumberEnd: 510
    functionName: IsoMp4Reader::seek_track_by_time
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - expect
    - get
    - calc_timestamp
    - Error::SeekError
    - symphonia_core::errors::seek_error
    - IsoMp4Reader::seek_track_by_ts
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn seek_track_by_time(&mut self, track_num: usize, time: Time) ->
      Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Timestamp::is_negative
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:521,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:522,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:530,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:530,1
    - Dst: skip
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:530,1
    - Dst: ts_sample
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:531,1
    - Dst: Timestamp::get
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:531,1
    - Dst: IsoMp4Reader::try_read_more_segments
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:540,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:541,1
    - Dst: sample_timing
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:548,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:550,1
    - Dst: Timestamp::try_from
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:554,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:556,1
    - Dst: sample_data
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:560,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:570,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:581,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 85
    argCount: 2
    argNames:
    - track_num
    - ts
    argTypes:
    - usize
    - Timestamp
    constantsTouched: []
    func_position:
      end: 582
      start: 512
    functionDepth: 11
    functionLinenumber: 512
    functionLinenumberEnd: 582
    functionName: IsoMp4Reader::seek_track_by_ts
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - Timestamp::get
    - skip
    - sample_data
    - sample_timing
    - ts_sample
    - Timestamp::try_from
    - Timestamp::is_negative
    - iter
    - IsoMp4Reader::try_read_more_segments
    - symphonia_core::errors::seek_error
    - Ok
    - enumerate
    linkageType: ''
    returnType: Result
    signature: 'fn seek_track_by_ts(&mut self, track_num: usize, ts: Timestamp) ->
      Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:587,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 588
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 588
    functionName: IsoMp4Reader::score
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:596,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:596,1
    - Dst: IsoMp4Reader::try_new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 597
      start: 592
    functionDepth: 10
    functionLinenumber: 592
    functionLinenumberEnd: 597
    functionName: IsoMp4Reader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - IsoMp4Reader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 606
      start: 599
    functionDepth: 1
    functionLinenumber: 599
    functionLinenumberEnd: 606
    functionName: IsoMp4Reader::probe_data
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 612
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 612
    functionName: IsoMp4Reader::format_info
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 616
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 616
    functionName: IsoMp4Reader::media_info
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: IsoMp4Reader::next_sample_info
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:622,1
    - Dst: seek_atom_end
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:631,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:633,1
    - Dst: IsoMp4Reader::try_read_more_segments
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:640,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:641,1
    - Dst: IsoMp4Reader::consume_next_sample
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:647,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:649,1
    - Dst: read_raw_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:653,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:655,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:655,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:655,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 661
      start: 618
    functionDepth: 12
    functionLinenumber: 618
    functionLinenumberEnd: 661
    functionName: IsoMp4Reader::next_packet
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - read_raw_boxed_slice_exact
    - IsoMp4Reader::next_sample_info
    - Some
    - IsoMp4Reader::try_read_more_segments
    - Packet::new
    - Ok
    - seek_atom_end
    - symphonia_core::errors::decode_error
    - IsoMp4Reader::consume_next_sample
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 665
      start: 663
    functionDepth: 2
    functionLinenumber: 663
    functionLinenumberEnd: 665
    functionName: IsoMp4Reader::metadata
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 669
      start: 667
    functionDepth: 0
    functionLinenumber: 667
    functionLinenumberEnd: 669
    functionName: IsoMp4Reader::tracks
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:672,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:673,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:682,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:682,1
    - Dst: find
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:682,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:687,1
    - Dst: calc_time
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:690,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:690,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:690,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:693,1
    - Dst: IsoMp4Reader::seek_track_by_time
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:695,1
    - Dst: IsoMp4Reader::seek_track_by_ts
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:700,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:703,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:710,1
    - Dst: position
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:710,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:710,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:714,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:719,1
    - Dst: IsoMp4Reader::seek_track_by_time
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:721,1
    - Dst: IsoMp4Reader::seek_track_by_time
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:726,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 76
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 729
      start: 671
    functionDepth: 11
    functionLinenumber: 671
    functionLinenumberEnd: 729
    functionName: IsoMp4Reader::seek
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - len
    - IsoMp4Reader::seek_track_by_time
    - calc_time
    - find
    - iter
    - Error::SeekError
    - symphonia_core::errors::seek_error
    - IsoMp4Reader::seek_track_by_ts
    - position
    - enumerate
    - is_empty
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into_inner
      Src: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs:735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 736
      start: 731
    functionDepth: 1
    functionLinenumber: 731
    functionLinenumberEnd: 736
    functionName: IsoMp4Reader::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - into_inner
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:14,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:14,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 15
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 15
    functionName: FpU16::new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/fp.rs
    functionUses: 0
    functionsReached:
    - Self
    - u32::from
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(val: u16) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:18,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 19
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 19
    functionName: FpU16::parse_raw
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/fp.rs
    functionUses: 2
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub fn parse_raw(val: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1081,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1081,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1081,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1081,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - timebase
    argTypes:
    - TimeBase
    constantsTouched: []
    func_position:
      end: 1082
      start: 1080
    functionDepth: 1
    functionLinenumber: 1080
    functionLinenumberEnd: 1082
    functionName: f64::from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 17
    functionsReached:
    - get
    - f64::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(timebase: TimeBase) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:34,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: FpU8::new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/fp.rs
    functionUses: 0
    functionsReached:
    - Self
    - u16::from
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(val: u8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - val
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: FpU8::parse_raw
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/fp.rs
    functionUses: 2
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub fn parse_raw(val: u16) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f32::from
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:76,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FpI8
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: f32::from
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/fp.rs
    functionUses: 9
    functionsReached:
    - f32::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(fp: FpI8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:60,1
    - Dst: i16::from
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: FpI8::new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/fp.rs
    functionUses: 0
    functionsReached:
    - Self
    - i16::from
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(val: i8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-format-isomp4/src/fp.rs:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - val
    argTypes:
    - i16
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: FpI8::parse_raw
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/fp.rs
    functionUses: 1
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub fn parse_raw(val: i16) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:30,1
    - Dst: atoms::unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:33,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:37,1
    - Dst: MetadataBlockHeader::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:41,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:41,1
    - Dst: io::Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:41,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:44,1
    - Dst: StreamInfo::is_valid_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:49,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:49,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:50,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:53,1
    - Dst: StreamInfo::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:54,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:54,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:56,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 51
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 57
      start: 29
    functionDepth: 15
    functionLinenumber: 29
    functionLinenumberEnd: 57
    functionName: FlacAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs
    functionUses: 0
    functionsReached:
    - atoms::unsupported_error
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - u64::from
    - io::Result::read_quad_bytes
    - MetadataBlockHeader::read
    - StreamInfo::read
    - BufReader::new
    - StreamInfo::is_valid_size
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:64,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:65,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:66,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:69,1
    - Dst: VerificationCheck::Md5
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut AudioSampleEntry'
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: FlacAtom::fill_audio_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs
    functionUses: 0
    functionsReached:
    - Some
    - VerificationCheck::Md5
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_audio_sample_entry(self, entry: &mut AudioSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: TrunAtom::is_sample_duration_present
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_sample_duration_present(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: TrunAtom::is_first_sample_duration_present
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_first_sample_duration_present(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: TrunAtom::is_sample_size_present
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_sample_size_present(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 69
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionName: TrunAtom::is_first_sample_size_present
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_first_sample_size_present(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: TrunAtom::are_sample_flags_present
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn are_sample_flags_present(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: TrunAtom::are_sample_composition_time_offsets_present
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn are_sample_composition_time_offsets_present(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TrunAtom::is_sample_duration_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:85,1
    - Dst: TrunAtom::is_first_sample_duration_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:90,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:92,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:93,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:93,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:97,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:97,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 1
    argNames:
    - default_dur
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 100
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 100
    functionName: TrunAtom::total_duration
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached:
    - TrunAtom::is_sample_duration_present
    - u64::from
    - TrunAtom::is_first_sample_duration_present
    linkageType: ''
    returnType: u64
    signature: 'pub fn total_duration(&self, default_dur: u32) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TrunAtom::is_sample_size_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:104,1
    - Dst: TrunAtom::is_first_sample_size_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:107,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:108,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:109,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:109,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:112,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 1
    argNames:
    - default_size
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 114
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 114
    functionName: TrunAtom::total_size
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - TrunAtom::is_first_sample_size_present
    - TrunAtom::is_sample_size_present
    linkageType: ''
    returnType: u64
    signature: 'pub fn total_size(&self, default_size: u32) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TrunAtom::is_sample_duration_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:121,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:124,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:124,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:126,1
    - Dst: "sample_duration[..sample_num_rel as usize]\n                    .iter()\n\
        \                    .map(|&s| u64::from(s))\n                    .sum::<u64>"
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:124,1
    - Dst: TrunAtom::is_first_sample_duration_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:139,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:141,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:142,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:142,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:146,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:146,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 40
    argCount: 2
    argNames:
    - sample_num_rel
    - default_dur
    argTypes:
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 151
      start: 118
    functionDepth: 11
    functionLinenumber: 118
    functionLinenumberEnd: 151
    functionName: TrunAtom::sample_timing
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached:
    - TrunAtom::is_sample_duration_present
    - u64::from
    - iter
    - map
    - "sample_duration[..sample_num_rel as usize]\n                    .iter()\n \
      \                   .map(|&s| u64::from(s))\n                    .sum::<u64>"
    - TrunAtom::is_first_sample_duration_present
    linkageType: ''
    returnType: (u64, u32)
    signature: 'pub fn sample_timing(&self, sample_num_rel: u32, default_dur: u32)
      -> (u64, u32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TrunAtom::is_sample_size_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:158,1
    - Dst: TrunAtom::is_first_sample_size_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:161,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - sample_num_rel
    - default_size
    argTypes:
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 167
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 167
    functionName: TrunAtom::sample_size
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached:
    - TrunAtom::is_first_sample_size_present
    - TrunAtom::is_sample_size_present
    linkageType: ''
    returnType: u32
    signature: 'pub fn sample_size(&self, sample_num_rel: u32, default_size: u32)
      -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TrunAtom::is_sample_size_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:174,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:177,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:177,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:179,1
    - Dst: "sample_size[..sample_num_rel as usize]\n                    .iter()\n\
        \                    .map(|&s| u64::from(s))\n                    .sum::<u64>"
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:177,1
    - Dst: TrunAtom::is_first_sample_size_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:190,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:192,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:193,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:193,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:197,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:197,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 40
    argCount: 2
    argNames:
    - sample_num_rel
    - default_size
    argTypes:
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 202
      start: 171
    functionDepth: 11
    functionLinenumber: 171
    functionLinenumberEnd: 202
    functionName: TrunAtom::sample_offset
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - TrunAtom::is_sample_size_present
    - TrunAtom::is_first_sample_size_present
    - iter
    - map
    - "sample_size[..sample_num_rel as usize]\n                    .iter()\n     \
      \               .map(|&s| u64::from(s))\n                    .sum::<u64>"
    linkageType: ''
    returnType: (u64, u32)
    signature: 'pub fn sample_offset(&self, sample_num_rel: u32, default_size: u32)
      -> (u64, u32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TrunAtom::is_sample_duration_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:209,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:213,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:217,1
    - Dst: TrunAtom::is_first_sample_duration_present
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:222,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:224,1
    - Dst: u64::checked_div
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:235,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:235,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:235,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 2
    argNames:
    - ts_rel
    - default_dur
    argTypes:
    - u64
    - u32
    constantsTouched: []
    func_position:
      end: 239
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 239
    functionName: TrunAtom::ts_sample
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached:
    - TrunAtom::is_sample_duration_present
    - u64::from
    - Option::unwrap_or
    - TrunAtom::is_first_sample_duration_present
    - u64::checked_div
    linkageType: ''
    returnType: u32
    signature: 'pub fn ts_sample(&self, ts_rel: u64, default_dur: u32) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:244,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:246,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:250,1
    - Dst: bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:250,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:250,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:255,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:255,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:261,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:262,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:267,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:268,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:269,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:276,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:277,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:278,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:282,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:283,1
    - Dst: u32::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:284,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:288,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:288,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:295,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs:299,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 83
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 310
      start: 243
    functionDepth: 10
    functionLinenumber: 243
    functionLinenumberEnd: 310
    functionName: TrunAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - u64::from
    - io::Result::read_u32
    - Some
    - u32::push
    - is_some
    - Vec::new
    - Self::push
    - bits::sign_extend_leq32_to_i32
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:27,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:30,1
    - Dst: read_atom::<MdhdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:30,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:33,1
    - Dst: read_atom::<HdlrAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:33,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:36,1
    - Dst: read_atom::<MinfAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:36,1
    - Dst: decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:44,1
    - Dst: decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:48,1
    - Dst: decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:52,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs:55,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 38
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 56
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 56
    functionName: MdiaAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs
    functionUses: 0
    functionsReached:
    - io::Result::next_header
    - Some
    - read_atom::<HdlrAtom>
    - read_atom::<MinfAtom>
    - Ok
    - decode_error
    - read_atom::<MdhdAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_mut
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs:23,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs:23,1
    - Dst: take_metadata
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 24
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionName: UdtaAtom::take_metadata
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs
    functionUses: 0
    functionsReached:
    - and_then
    - as_mut
    - take_metadata
    linkageType: ''
    returnType: Option
    signature: pub fn take_metadata(&mut self) -> Option<MetadataRevision>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs:32,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs:35,1
    - Dst: read_atom::<MetaAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs:35,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs:42,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: UdtaAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Some
    - read_atom::<MetaAtom>
    - io::Result::next_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 2
    argNames:
    - _reader
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 17
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 17
    functionName: StssAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stss.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(_reader: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:45,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:47,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:48,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:48,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:48,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:49,1
    - Dst: Result::size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:52,1
    - Dst: String::map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:52,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:54,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:54,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:52,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:55,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:58,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:58,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:58,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:58,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:59,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:59,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:60,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:63,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:64,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:66,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:70,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:71,1
    - Dst: u64::checked_add
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:73,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:74,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:73,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:75,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:85,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:87,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs:90,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 89
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 98
      start: 44
    functionDepth: 10
    functionLinenumber: 44
    functionLinenumberEnd: 98
    functionName: SidxAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - u64::from
    - Ok
    - get
    - Result::pos
    - io::Result::read_u16
    - io::Result::read_u32
    - Error::DecodeError
    - NonZero::new
    - Result::size
    - Option::ok_or
    - io::Result::read_u64
    - Vec::new
    - Self::ok_or
    - u64::checked_add
    - Self::push
    - String::map
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:36,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:41,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:41,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:43,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:49,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:49,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:50,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:50,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:51,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:51,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:51,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:52,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:54,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:56,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:60,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:61,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:62,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:62,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:62,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:63,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:64,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:66,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:70,1
    - Dst: FpU8::parse_raw
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:73,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:73,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs:77,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 85
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 78
      start: 35
    functionDepth: 10
    functionLinenumber: 35
    functionLinenumberEnd: 78
    functionName: MvhdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - Self::expect
    - u64::from
    - io::Result::read_u16
    - io::Result::read_u32
    - Error::DecodeError
    - NonZero::new
    - io::Result::read_u64
    - Self::ok_or
    - Ok
    - Default::default
    - io::Result::read_extended_header
    - FpU8::parse_raw
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::data_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:40,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:40,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:42,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:46,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:50,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:53,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:56,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:59,1
    - Dst: atoms::unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:63,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:66,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 2
    argNames:
    - reader
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 67
      start: 30
    functionDepth: 13
    functionLinenumber: 30
    functionLinenumberEnd: 67
    functionName: OpusAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs
    functionUses: 0
    functionsReached:
    - atoms::unsupported_error
    - atoms::decode_error
    - Result::read_buf_exact
    - Error::DecodeError
    - Option::ok_or
    - into_boxed_slice
    - Result::data_size
    - copy_from_slice
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(reader: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:72,1
    - Dst: opus::OpusHead::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:74,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:75,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut AudioSampleEntry'
    constantsTouched: []
    func_position:
      end: 81
      start: 71
    functionDepth: 14
    functionLinenumber: 71
    functionLinenumberEnd: 81
    functionName: OpusAtom::fill_audio_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs
    functionUses: 0
    functionsReached:
    - opus::OpusHead::read
    - Some
    - BufReader::new
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_audio_sample_entry(self, entry: &mut AudioSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:36,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:39,1
    - Dst: read_atom::<StsdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:39,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:42,1
    - Dst: read_atom::<SttsAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:42,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:53,1
    - Dst: read_atom::<StscAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:53,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:56,1
    - Dst: read_atom::<StszAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:56,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:59,1
    - Dst: read_atom::<StcoAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:59,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:62,1
    - Dst: read_atom::<Co64Atom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:62,1
    - Dst: None::is_none
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:68,1
    - Dst: None::is_none
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:68,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:75,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:79,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:83,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:87,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs:90,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 69
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 91
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 91
    functionName: StblAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - None::is_none
    - io::Result::next_header
    - read_atom::<Co64Atom>
    - Ok
    - Some
    - read_atom::<StszAtom>
    - read_atom::<StsdAtom>
    - read_atom::<StcoAtom>
    - read_atom::<SttsAtom>
    - read_atom::<StscAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::data_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs:25,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs:27,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs:28,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs:31,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 34
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 34
    functionName: Dec3Atom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs
    functionUses: 0
    functionsReached:
    - Ok
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - Result::data_size
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut AudioSampleEntry'
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: Dec3Atom::fill_audio_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_audio_sample_entry(self, entry: &mut AudioSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::data_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs:25,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs:27,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs:28,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs:31,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 34
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 34
    functionName: Dac3Atom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs
    functionUses: 0
    functionsReached:
    - Ok
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - Result::data_size
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut AudioSampleEntry'
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: Dac3Atom::fill_audio_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_audio_sample_entry(self, entry: &mut AudioSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:17,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:26,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:26,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 1
    argNames:
    - code
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 28
      start: 14
    functionDepth: 10
    functionLinenumber: 14
    functionLinenumberEnd: 28
    functionName: parse_language
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs
    functionUses: 1
    functionsReached:
    - String::from_utf8_lossy
    - to_string
    - String::new
    linkageType: ''
    returnType: String
    signature: 'fn parse_language(code: u16) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:48,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:53,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:53,1
    - Dst: String::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:55,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:60,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:60,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:61,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:61,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:62,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:62,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:62,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:63,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:65,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:67,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:71,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:72,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:73,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:73,1
    - Dst: Self::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:73,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:74,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:75,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:78,1
    - Dst: parse_language
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:82,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:82,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:85,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs:87,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 86
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 88
      start: 47
    functionDepth: 10
    functionLinenumber: 47
    functionLinenumberEnd: 88
    functionName: MdhdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs
    functionUses: 0
    functionsReached:
    - parse_language
    - atoms::decode_error
    - Self::expect
    - u64::from
    - io::Result::read_u16
    - String::new
    - io::Result::read_u32
    - Error::DecodeError
    - NonZero::new
    - io::Result::read_u64
    - Self::ok_or
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:27,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:31,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:34,1
    - Dst: read_atom::<TfhdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:34,1
    - Dst: read_atom::<TrunAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:37,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:42,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:51,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs:54,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 55
      start: 25
    functionDepth: 10
    functionLinenumber: 25
    functionLinenumberEnd: 55
    functionName: TrafAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - io::Result::next_header
    - Some
    - read_atom::<TrunAtom>
    - Vec::new
    - read_atom::<TfhdAtom>
    - Self::push
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs:28,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs:30,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs:31,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs:32,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs:33,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs:34,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs:35,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 37
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 37
    functionName: TrexAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs
    functionUses: 0
    functionsReached:
    - Ok
    - io::Result::read_extended_header
    - io::Result::read_u32
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:26,1
    - Dst: atoms::unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:29,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:33,1
    - Dst: io::Result::data_left
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:37,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:40,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:42,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:46,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:48,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<B>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 49
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 49
    functionName: AlacAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs
    functionUses: 0
    functionsReached:
    - atoms::unsupported_error
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - io::Result::data_left
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadAtom>(it: &mut AtomIterator<B>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MagicCookie::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:57,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:58,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:59,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut AudioSampleEntry'
    constantsTouched: []
    func_position:
      end: 63
      start: 53
    functionDepth: 15
    functionLinenumber: 53
    functionLinenumberEnd: 63
    functionName: AlacAtom::fill_audio_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs
    functionUses: 0
    functionsReached:
    - MagicCookie::read
    - Some
    - f64::from
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_audio_sample_entry(self, entry: &mut AudioSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:29,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:31,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:32,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:38,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:38,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:41,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:41,1
    - Dst: SampleSize::Variable
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:44,1
    - Dst: SampleSize::Constant
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:47,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs:50,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 51
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 51
    functionName: StszAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs
    functionUses: 0
    functionsReached:
    - SampleSize::Variable
    - SampleSize::Constant
    - io::Result::read_u32
    - min
    - Ok
    - io::Result::read_extended_header
    - Vec::with_capacity
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: DataType::Unknown
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 97
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 97
    functionName: DataType::from
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - DataType::Unknown
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:102,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: parse_no_type
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - Some
    - RawValue::from
    linkageType: ''
    returnType: Option
    signature: 'fn parse_no_type(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:107,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:108,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: parse_utf8
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - String::from_utf8_lossy
    - Some
    - RawValue::from
    linkageType: ''
    returnType: Option
    signature: 'fn parse_utf8(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: text::decode_utf16be_lossy
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:113,1
    - Dst: collect::<String>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:113,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:114,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 11
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: parse_utf16
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - collect::<String>
    - RawValue::from
    - Some
    - text::decode_utf16be_lossy
    linkageType: ''
    returnType: Option
    signature: 'fn parse_utf16(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:118,1
    - Dst: bits::sign_extend_leq8_to_i8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:120,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:121,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 125
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionName: parse_signed_int8
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - bits::sign_extend_leq8_to_i8
    - Some
    - RawValue::from
    - '&''static [ProbeFormatData]::len'
    linkageType: ''
    returnType: Option
    signature: 'fn parse_signed_int8(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:128,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:130,1
    - Dst: Self::read_be_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:130,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:130,1
    - Dst: bits::sign_extend_leq16_to_i16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:131,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:132,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 136
      start: 127
    functionDepth: 14
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionName: parse_signed_int16
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - bits::sign_extend_leq16_to_i16
    - '&''static [ProbeFormatData]::len'
    - io::Result::ok
    - Some
    - Self::read_be_u16
    - RawValue::from
    - BufReader::new
    linkageType: ''
    returnType: Option
    signature: 'fn parse_signed_int16(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:139,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:141,1
    - Dst: Self::read_be_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:141,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:141,1
    - Dst: bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:142,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:143,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 147
      start: 138
    functionDepth: 14
    functionLinenumber: 138
    functionLinenumberEnd: 147
    functionName: parse_signed_int32
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - '&''static [ProbeFormatData]::len'
    - io::Result::ok
    - Some
    - RawValue::from
    - Self::read_be_u32
    - bits::sign_extend_leq32_to_i32
    - BufReader::new
    linkageType: ''
    returnType: Option
    signature: 'fn parse_signed_int32(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:150,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:152,1
    - Dst: Self::read_be_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:152,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:152,1
    - Dst: bits::sign_extend_leq64_to_i64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:153,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:154,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 158
      start: 149
    functionDepth: 14
    functionLinenumber: 149
    functionLinenumberEnd: 158
    functionName: parse_signed_int64
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - '&''static [ProbeFormatData]::len'
    - io::Result::ok
    - Some
    - RawValue::from
    - bits::sign_extend_leq64_to_i64
    - BufReader::new
    - Self::read_be_u64
    linkageType: ''
    returnType: Option
    signature: 'fn parse_signed_int64(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:161,1
    - Dst: parse_signed_int8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:162,1
    - Dst: parse_signed_int16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:163,1
    - Dst: parse_signed_int32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:164,1
    - Dst: parse_signed_int64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 168
      start: 160
    functionDepth: 15
    functionLinenumber: 160
    functionLinenumberEnd: 168
    functionName: parse_var_signed_int
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - parse_signed_int64
    - '&''static [ProbeFormatData]::len'
    - parse_signed_int8
    - parse_signed_int16
    - parse_signed_int32
    linkageType: ''
    returnType: Option
    signature: 'fn parse_var_signed_int(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:171,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:172,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: parse_unsigned_int8
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - Some
    - RawValue::from
    - '&''static [ProbeFormatData]::len'
    linkageType: ''
    returnType: Option
    signature: 'fn parse_unsigned_int8(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:178,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:180,1
    - Dst: Self::read_be_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:180,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:180,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:181,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:181,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 185
      start: 177
    functionDepth: 14
    functionLinenumber: 177
    functionLinenumberEnd: 185
    functionName: parse_unsigned_int16
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - '&''static [ProbeFormatData]::len'
    - io::Result::ok
    - Some
    - Self::read_be_u16
    - RawValue::from
    - BufReader::new
    linkageType: ''
    returnType: Option
    signature: 'fn parse_unsigned_int16(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:188,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:190,1
    - Dst: Self::read_be_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:190,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:190,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:191,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 195
      start: 187
    functionDepth: 14
    functionLinenumber: 187
    functionLinenumberEnd: 195
    functionName: parse_unsigned_int32
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - '&''static [ProbeFormatData]::len'
    - io::Result::ok
    - Some
    - RawValue::from
    - Self::read_be_u32
    - BufReader::new
    linkageType: ''
    returnType: Option
    signature: 'fn parse_unsigned_int32(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:198,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:200,1
    - Dst: Self::read_be_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:200,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:200,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:201,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 205
      start: 197
    functionDepth: 14
    functionLinenumber: 197
    functionLinenumberEnd: 205
    functionName: parse_unsigned_int64
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 2
    functionsReached:
    - '&''static [ProbeFormatData]::len'
    - io::Result::ok
    - Some
    - RawValue::from
    - BufReader::new
    - Self::read_be_u64
    linkageType: ''
    returnType: Option
    signature: 'fn parse_unsigned_int64(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:208,1
    - Dst: parse_unsigned_int8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:209,1
    - Dst: parse_unsigned_int16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:210,1
    - Dst: parse_unsigned_int32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:211,1
    - Dst: parse_unsigned_int64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 215
      start: 207
    functionDepth: 15
    functionLinenumber: 207
    functionLinenumberEnd: 215
    functionName: parse_var_unsigned_int
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - parse_unsigned_int64
    - parse_unsigned_int32
    - '&''static [ProbeFormatData]::len'
    - parse_unsigned_int8
    - parse_unsigned_int16
    linkageType: ''
    returnType: Option
    signature: 'fn parse_var_unsigned_int(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:218,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:220,1
    - Dst: Self::read_be_f32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:220,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:220,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:221,1
    - Dst: RawValue::Float
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:221,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 225
      start: 217
    functionDepth: 14
    functionLinenumber: 217
    functionLinenumberEnd: 225
    functionName: parse_float32
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - Self::read_be_f32
    - '&''static [ProbeFormatData]::len'
    - io::Result::ok
    - Some
    - RawValue::Float
    - f64::from
    - BufReader::new
    linkageType: ''
    returnType: Option
    signature: 'fn parse_float32(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:228,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:230,1
    - Dst: Self::read_be_f64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:230,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:230,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:231,1
    - Dst: RawValue::Float
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:231,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 235
      start: 227
    functionDepth: 14
    functionLinenumber: 227
    functionLinenumberEnd: 235
    functionName: parse_float64
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - '&''static [ProbeFormatData]::len'
    - Self::read_be_f64
    - io::Result::ok
    - Some
    - RawValue::Float
    - BufReader::new
    linkageType: ''
    returnType: Option
    signature: 'fn parse_float64(data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_no_type
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:239,1
    - Dst: parse_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:240,1
    - Dst: parse_utf16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:241,1
    - Dst: parse_unsigned_int8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:242,1
    - Dst: parse_unsigned_int16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:243,1
    - Dst: parse_unsigned_int32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:244,1
    - Dst: parse_unsigned_int64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:245,1
    - Dst: parse_var_unsigned_int
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:246,1
    - Dst: parse_signed_int8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:247,1
    - Dst: parse_signed_int16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:248,1
    - Dst: parse_signed_int32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:249,1
    - Dst: parse_signed_int64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:250,1
    - Dst: parse_var_signed_int
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:251,1
    - Dst: parse_float32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:252,1
    - Dst: parse_float64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:253,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - data_type
    - data
    argTypes:
    - DataType
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 256
      start: 237
    functionDepth: 12
    functionLinenumber: 237
    functionLinenumberEnd: 256
    functionName: parse_tag_value
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 6
    functionsReached:
    - parse_unsigned_int64
    - parse_var_unsigned_int
    - parse_signed_int64
    - parse_unsigned_int32
    - parse_utf8
    - parse_utf16
    - parse_unsigned_int8
    - parse_signed_int8
    - parse_var_signed_int
    - parse_float32
    - parse_float64
    - parse_signed_int16
    - parse_signed_int32
    - parse_no_type
    - parse_unsigned_int16
    linkageType: ''
    returnType: Option
    signature: 'fn parse_tag_value(data_type: DataType, data: &[u8]) -> Option<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:265,1
    - Dst: get_raw_tag_key
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:267,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:269,1
    - Dst: parse_tag_value
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:271,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:273,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:273,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:280,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - it
    - builder
    - map
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    - fn(&RawValue) -> Option<StandardTag>
    constantsTouched: []
    func_position:
      end: 281
      start: 260
    functionDepth: 11
    functionLinenumber: 260
    functionLinenumberEnd: 281
    functionName: add_generic_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - Tag::new_from_parts
    - get_raw_tag_key
    - iter
    - parse_tag_value
    - '&mut MetadataBuilder::add_tag'
    - Ok
    - read_atom::<MetaTagAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn add_generic_tag<R: ReadAtom>(it: &mut AtomIterator<R>,builder:
      &mut MetadataBuilder,map: fn(&RawValue) -> Option<StandardTag>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:288,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:291,1
    - Dst: parse_tag_value
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:293,1
    - Dst: get_raw_tag_key
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:294,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:296,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:296,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:300,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 3
    argNames:
    - iter
    - builder
    - map
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    - fn(&RawValue) -> Option<StandardTag>
    constantsTouched: []
    func_position:
      end: 301
      start: 283
    functionDepth: 13
    functionLinenumber: 283
    functionLinenumberEnd: 301
    functionName: add_flag_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - Tag::new_from_parts
    - first
    - get_raw_tag_key
    - parse_tag_value
    - '&mut MetadataBuilder::add_tag'
    - Ok
    - read_atom::<MetaTagAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn add_flag_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder: &mut
      MetadataBuilder,map: fn(&RawValue) -> Option<StandardTag>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:309,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:312,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:313,1
    - Dst: get_raw_tag_key
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:318,1
    - Dst: u16::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:323,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:323,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:323,1
    - Dst: u16::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:325,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:325,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:325,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:329,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:330,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:330,1
    - Dst: EbmlError::clone
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:330,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:335,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:336,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:336,1
    - Dst: EbmlError::clone
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:336,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:341,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 60
    argCount: 4
    argNames:
    - iter
    - builder
    - map0
    - map1
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    - fn(&RawValue) -> Option<StandardTag>
    - fn(&RawValue) -> Option<StandardTag>
    constantsTouched: []
    func_position:
      end: 342
      start: 303
    functionDepth: 15
    functionLinenumber: 303
    functionLinenumberEnd: 342
    functionName: add_pair_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - expect
    - len
    - Tag::new_from_parts
    - EbmlError::clone
    - Ok
    - first
    - get_raw_tag_key
    - RawValue::from
    - '&mut MetadataBuilder::add_tag'
    - try_into
    - u16::from_be_bytes
    - read_atom::<MetaTagAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn add_pair_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder: &mut
      MetadataBuilder,map0: fn(&RawValue) -> Option<StandardTag>,map1: fn(&RawValue)
      -> Option<StandardTag>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:348,1
    - Dst: symphonia_metadata::utils::images::try_get_image_info
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:352,1
    - Dst: '&mut MetadataBuilder::add_visual'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:354,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:355,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:355,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:355,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:356,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:356,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:357,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:357,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:358,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:359,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:364,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 38
    argCount: 2
    argNames:
    - iter
    - builder
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 365
      start: 344
    functionDepth: 9
    functionLinenumber: 344
    functionLinenumberEnd: 365
    functionName: add_visual_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - symphonia_metadata::utils::images::try_get_image_info
    - Some
    - map
    - Option::as_ref
    - '&mut MetadataBuilder::add_visual'
    - Ok
    - Default::default
    - read_atom::<MetaTagAtom>
    - clone
    linkageType: ''
    returnType: Result
    signature: 'fn add_visual_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:371,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:374,1
    - Dst: parse_tag_value
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:376,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:382,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:383,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:384,1
    - Dst: get_raw_tag_key
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:398,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:400,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:400,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:401,1
    - Dst: StandardTag::ContentAdvisory
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:402,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:411,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - iter
    - builder
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 412
      start: 367
    functionDepth: 13
    functionLinenumber: 367
    functionLinenumberEnd: 412
    functionName: add_advisory_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - StandardTag::ContentAdvisory
    - Tag::new_std
    - Ok
    - first
    - get_raw_tag_key
    - Some
    - parse_tag_value
    - '&mut MetadataBuilder::add_tag'
    - RawTag::new
    - read_atom::<MetaTagAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn add_advisory_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:418,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:421,1
    - Dst: parse_tag_value
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:423,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:439,1
    - Dst: get_raw_tag_key
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:448,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:450,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:450,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:451,1
    - Dst: StandardTag::MediaFormat
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:452,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:452,1
    - Dst: String::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:452,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:461,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 2
    argNames:
    - iter
    - builder
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 462
      start: 414
    functionDepth: 13
    functionLinenumber: 414
    functionLinenumberEnd: 462
    functionName: add_media_type_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - StandardTag::MediaFormat
    - Tag::new_std
    - Arc::new
    - Ok
    - first
    - get_raw_tag_key
    - Some
    - String::from
    - parse_tag_value
    - '&mut MetadataBuilder::add_tag'
    - RawTag::new
    - read_atom::<MetaTagAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn add_media_type_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:468,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:471,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:474,1
    - Dst: u16::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:475,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:476,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:476,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:476,1
    - Dst: id3v1::get_genre_name
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:481,1
    - Dst: get_raw_tag_key
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:485,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:487,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:487,1
    - Dst: RawValue::UnsignedInt
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:489,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:489,1
    - Dst: StandardTagPair::map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:490,1
    - Dst: StandardTag::Genre
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:490,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:490,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:495,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 42
    argCount: 2
    argNames:
    - iter
    - builder
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 496
      start: 464
    functionDepth: 10
    functionLinenumber: 464
    functionLinenumberEnd: 496
    functionName: add_id3v1_genre_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - expect
    - id3v1::get_genre_name
    - len
    - Tag::new_from_parts
    - u64::from
    - StandardTag::Genre
    - Arc::new
    - first
    - Ok
    - as_ref
    - get_raw_tag_key
    - RawValue::UnsignedInt
    - StandardTagPair::map
    - '&mut MetadataBuilder::add_tag'
    - try_into
    - u16::from_be_bytes
    - read_atom::<MetaTagAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn add_id3v1_genre_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:502,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:505,1
    - Dst: parse_tag_value
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:507,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:510,1
    - Dst: get_raw_tag_key
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:518,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:520,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:520,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:521,1
    - Dst: StandardTag::Rating
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:522,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:531,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - iter
    - builder
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 532
      start: 498
    functionDepth: 13
    functionLinenumber: 498
    functionLinenumberEnd: 532
    functionName: add_rating_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - Tag::new_std
    - Ok
    - first
    - get_raw_tag_key
    - Some
    - StandardTag::Rating
    - parse_tag_value
    - '&mut MetadataBuilder::add_tag'
    - RawTag::new
    - read_atom::<MetaTagAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn add_rating_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_atom::<MetaTagAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:538,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:541,1
    - Dst: parse_tag_value
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:543,1
    - Dst: itunes::parse_itunes_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:545,1
    - Dst: Option::full_name
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:545,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:552,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - iter
    - builder
    argTypes:
    - '&mut AtomIterator<R>'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 553
      start: 534
    functionDepth: 11
    functionLinenumber: 534
    functionLinenumberEnd: 553
    functionName: add_freeform_tag
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - itunes::parse_itunes_tag
    - iter
    - parse_tag_value
    - Ok
    - read_atom::<MetaTagAtom>
    - Option::full_name
    linkageType: ''
    returnType: Result
    signature: 'fn add_freeform_tag<R: ReadAtom>(iter: &mut AtomIterator<R>,builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:577,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:580,1
    - Dst: DataType::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:584,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:593,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:594,1
    - Dst: io::Result::data_left
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:599,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:599,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:601,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:603,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:606,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 607
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 607
    functionName: MetaTagDataAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - DataType::from
    - io::Result::read_boxed_slice_exact
    - io::Result::read_u16
    - io::Result::data_left
    - Error::DecodeError
    - Ok
    - io::Result::read_extended_header
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:619,1
    - Dst: io::Result::data_left
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:621,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:621,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:623,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:626,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:629,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:629,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:631,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 632
      start: 618
    functionDepth: 2
    functionLinenumber: 618
    functionLinenumberEnd: 632
    functionName: MetaTagNamespaceAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_boxed_slice_exact
    - Error::DecodeError
    - io::Result::data_left
    - to_string
    - Ok
    - String::from_utf8_lossy
    - io::Result::read_extended_header
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:650,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:652,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:652,1
    - Dst: String::push_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:656,1
    - Dst: String::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:659,1
    - Dst: String::push_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:662,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 667
      start: 649
    functionDepth: 10
    functionLinenumber: 649
    functionLinenumberEnd: 667
    functionName: MetaTagAtom::full_name
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 0
    functionsReached:
    - is_some
    - String::push
    - String::push_str
    - String::new
    linkageType: ''
    returnType: String
    signature: pub fn full_name(&self) -> String
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::atom_type
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:672,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:676,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:678,1
    - Dst: u32::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:681,1
    - Dst: read_atom::<MetaTagDataAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:681,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:684,1
    - Dst: read_atom::<MetaTagNamespaceAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:684,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:687,1
    - Dst: read_atom::<MetaTagNamespaceAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:687,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:693,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 694
      start: 671
    functionDepth: 10
    functionLinenumber: 671
    functionLinenumberEnd: 694
    functionName: MetaTagAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 0
    functionsReached:
    - read_atom::<MetaTagNamespaceAtom>
    - io::Result::next_header
    - Result::atom_type
    - Some
    - u32::push
    - Vec::new
    - read_atom::<MetaTagDataAtom>
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:3,1
    - Dst: Result::clone
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:3,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 704
      start: 697
    functionDepth: 1
    functionLinenumber: 697
    functionLinenumberEnd: 704
    functionName: map_std_str
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - Result::clone
    - Some
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:4,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:6,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:8,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:10,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 720
      start: 706
    functionDepth: 0
    functionLinenumber: 706
    functionLinenumberEnd: 720
    functionName: map_std_bool
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - Some
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: try_into
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:4,1
    - Dst: ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:4,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:4,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:6,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 732
      start: 722
    functionDepth: 11
    functionLinenumber: 722
    functionLinenumberEnd: 732
    functionName: map_std_uint
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 1
    functionsReached:
    - try_into
    - ok
    - Some
    - map
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:743,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:745,1
    - Dst: add_advisory_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:748,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:750,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:750,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:753,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:753,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:756,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:756,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:759,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:759,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:762,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:762,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:765,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:765,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:768,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:768,1
    - Dst: add_flag_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:771,1
    - Dst: map_std_bool
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:771,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:774,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:774,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:777,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:777,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:780,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:780,1
    - Dst: add_visual_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:782,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:784,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:784,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:787,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:787,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:790,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:790,1
    - Dst: add_pair_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:792,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:795,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:796,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:799,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:799,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:802,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:802,1
    - Dst: add_flag_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:804,1
    - Dst: add_id3v1_genre_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:805,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:807,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:807,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:811,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:811,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:814,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:814,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:817,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:817,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:820,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:820,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:823,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:823,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:826,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:826,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:829,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:829,1
    - Dst: add_media_type_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:831,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:833,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:833,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:836,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:836,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:839,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:839,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:842,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:842,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:845,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:845,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:848,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:848,1
    - Dst: add_flag_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:851,1
    - Dst: map_std_bool
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:851,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:854,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:854,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:857,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:857,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:860,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:860,1
    - Dst: add_rating_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:862,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:864,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:864,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:867,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:867,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:870,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:870,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:873,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:873,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:876,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:876,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:879,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:879,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:882,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:882,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:885,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:885,1
    - Dst: add_pair_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:887,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:890,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:891,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:894,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:894,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:897,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:897,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:900,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:900,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:903,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:903,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:906,1
    - Dst: map_std_uint
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:906,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:909,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:909,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:912,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:912,1
    - Dst: add_flag_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:915,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:918,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:918,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:921,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:921,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:923,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:923,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:925,1
    - Dst: map_std_str
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:925,1
    - Dst: add_freeform_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:928,1
    - Dst: add_generic_tag
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:935,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:940,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs:940,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 213
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 941
      start: 742
    functionDepth: 16
    functionLinenumber: 742
    functionLinenumberEnd: 941
    functionName: IlstAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 0
    functionsReached:
    - Self::build
    - MetadataBuilder::new
    - map_std_str
    - add_pair_tag
    - add_freeform_tag
    - io::Result::next_header
    - add_flag_tag
    - add_visual_tag
    - map_std_uint
    - add_id3v1_genre_tag
    - add_media_type_tag
    - add_rating_tag
    - map_std_bool
    - Ok
    - add_generic_tag
    - add_advisory_tag
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - atom_type
    argTypes:
    - AtomType
    constantsTouched: []
    func_position:
      end: 1020
      start: 945
    functionDepth: 0
    functionLinenumber: 945
    functionLinenumberEnd: 1020
    functionName: get_raw_tag_key
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: '&''static str'
    signature: 'fn get_raw_tag_key(atom_type: AtomType) -> &''static str'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::data_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:32,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:35,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:38,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:44,1
    - Dst: AVCDecoderConfigurationRecord::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:47,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 50
      start: 26
    functionDepth: 17
    functionLinenumber: 26
    functionLinenumberEnd: 50
    functionName: AvcCAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - AVCDecoderConfigurationRecord::read
    - Result::data_size
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:56,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:57,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut VisualSampleEntry'
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: AvcCAtom::fill_video_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs
    functionUses: 0
    functionsReached:
    - Some
    - push
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_video_sample_entry(self, entry: &mut VisualSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs:20,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs:23,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs:23,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs:24,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs:25,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs:28,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 29
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 29
    functionName: MehdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - u64::from
    - io::Result::read_u32
    - io::Result::read_u64
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomType::Other
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - '[u8; 4]'
    constantsTouched: []
    func_position:
      end: 439
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 439
    functionName: AtomType::from
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 1
    functionsReached:
    - AtomType::Other
    linkageType: ''
    returnType: Self
    signature: 'fn from(val: [u8; 4]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomError::Other
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - symphonia_core::errors::Error
    constantsTouched: []
    func_position:
      end: 481
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionName: AtomError::from
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - AtomError::Other
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: symphonia_core::errors::Error) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/errors.rs:105,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-core/src/errors.rs:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - desc
    argTypes:
    - '&''static str'
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: decode_error
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 180
    functionsReached:
    - Error::DecodeError
    - Err
    linkageType: ''
    returnType: Result
    signature: 'pub fn decode_error<T>(desc: &''static str) -> Result<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/errors.rs:115,1
    - Dst: Error::Unsupported
      Src: /src/symphonia/symphonia-core/src/errors.rs:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - feature
    argTypes:
    - '&''static str'
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: unsupported_error
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 55
    functionsReached:
    - Error::Unsupported
    - Err
    linkageType: ''
    returnType: Result
    signature: 'pub fn unsupported_error<T>(feature: &''static str) -> Result<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:522,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:524,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:524,1
    - Dst: AtomType::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:525,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:525,1
    - Dst: Result::read_be_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:534,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:537,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:538,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:541,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:545,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:546,1
    - Dst: NonZeroU64::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:549,1
    - Dst: EbmlError::is_some_and
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:554,1
    - Dst: u16::get
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:554,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:555,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:558,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 47
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut R'
    constantsTouched: []
    func_position:
      end: 559
      start: 521
    functionDepth: 14
    functionLinenumber: 521
    functionLinenumberEnd: 559
    functionName: AtomHeader::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 1
    functionsReached:
    - u64::from
    - NonZeroU64::new
    - Result::pos
    - Result::read_quad_bytes
    - EbmlError::is_some_and
    - Result::read_be_u64
    - u16::get
    - Err
    - AtomType::from
    - Ok
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<R: ReadBytes>(reader: &mut R) -> Result<AtomHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 564
      start: 562
    functionDepth: 0
    functionLinenumber: 562
    functionLinenumberEnd: 564
    functionName: AtomHeader::atom_type
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AtomType
    signature: pub fn atom_type(&self) -> AtomType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:568,1
    - Dst: u16::get
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:568,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 569
      start: 567
    functionDepth: 9
    functionLinenumber: 567
    functionLinenumberEnd: 569
    functionName: AtomHeader::end
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - u16::get
    - map
    linkageType: ''
    returnType: Option
    signature: pub fn end(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 574
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 574
    functionName: AtomHeader::pos
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: pub fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:577,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 578
      start: 576
    functionDepth: 1
    functionLinenumber: 576
    functionLinenumberEnd: 578
    functionName: AtomHeader::data_pos
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - u64::from
    linkageType: ''
    returnType: u64
    signature: pub fn data_pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 583
      start: 581
    functionDepth: 0
    functionLinenumber: 581
    functionLinenumberEnd: 583
    functionName: AtomHeader::size
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: pub fn size(&self) -> Option<NonZeroU64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:589,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:589,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 590
      start: 588
    functionDepth: 9
    functionLinenumber: 588
    functionLinenumberEnd: 590
    functionName: AtomHeader::data_size
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - get
    - u64::from
    - map
    linkageType: ''
    returnType: Option
    signature: pub fn data_size(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - reader
    - len
    argTypes:
    - R
    - Option<u64>
    constantsTouched: []
    func_position:
      end: 616
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 616
    functionName: AtomIterator::new
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 1
    functionsReached:
    - Vec::with_capacity
    linkageType: ''
    returnType: Self
    signature: 'pub(crate) fn new(reader: R, len: Option<u64>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 621
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 621
    functionName: AtomIterator::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: R
    signature: pub(crate) fn into_inner(self) -> R
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:625,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 626
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 626
    functionName: AtomIterator::pending
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: pub(crate) fn pending(&self) -> Option<&AtomHeader>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::skip_atom
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:637,1
    - Dst: last
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:640,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:640,1
    - Dst: Option::end
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:640,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:640,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:643,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:646,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:651,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:653,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:656,1
    - Dst: AtomHeader::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:660,1
    - Dst: Result::size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:675,1
    - Dst: String::is_none
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:675,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:675,1
    - Dst: rev
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:675,1
    - Dst: any
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:675,1
    - Dst: Option::size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:675,1
    - Dst: String::is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:675,1
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:677,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:677,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:678,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:683,1
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:688,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:689,1
    - Dst: Result::end
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:692,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:695,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:696,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:701,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:702,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:702,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 110
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 703
      start: 635
    functionDepth: 11
    functionLinenumber: 635
    functionLinenumberEnd: 703
    functionName: AtomIterator::next_header
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Option::size
    - Result::pos
    - pos
    - AtomHeader::read
    - iter
    - Result::end
    - String::is_none
    - Ok
    - rev
    - as_ref
    - AtomIterator::skip_atom
    - map
    - seek_buffered
    - ignore_bytes
    - last
    - u64::from
    - Some
    - unwrap_or
    - any
    - Result::size
    - Option::end
    - Err
    - String::is_some
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn next_header(&mut self) -> Result<Option<&AtomHeader>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:707,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:707,1
    - Dst: Result::end
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:709,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:711,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:716,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:722,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:732,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 733
      start: 706
    functionDepth: 10
    functionLinenumber: 706
    functionLinenumberEnd: 733
    functionName: AtomIterator::skip_atom
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 2
    functionsReached:
    - pos
    - take
    - Result::end
    - Err
    - Ok
    - ignore_bytes
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn skip_atom(&mut self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:738,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:739,1
    - Dst: take
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:744,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:744,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:747,1
    - Dst: A::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:751,1
    - Dst: pop
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:754,1
    - Dst: AtomIterator::skip_atom
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:757,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 760
      start: 736
    functionDepth: 14
    functionLinenumber: 736
    functionLinenumberEnd: 760
    functionName: AtomIterator::read_atom
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - len
    - ok_or
    - take
    - AtomIterator::skip_atom
    - A::read
    - pop
    - Err
    - push
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_atom<A: Atom>(&mut self) -> Result<A>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:770,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:770,1
    - Dst: AtomIterator::seek_reader
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:771,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:771,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:772,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 773
      start: 766
    functionDepth: 13
    functionLinenumber: 766
    functionLinenumberEnd: 773
    functionName: AtomIterator::seek_atom_start
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Result::pos
    - take
    - AtomIterator::seek_reader
    - Ok
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn seek_atom_start(&mut self) -> Result<()>whereR: MediaSource,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:783,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:783,1
    - Dst: Result::end
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:785,1
    - Dst: AtomIterator::seek_reader
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:786,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 792
      start: 779
    functionDepth: 10
    functionLinenumber: 779
    functionLinenumberEnd: 792
    functionName: AtomIterator::seek_atom_end
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - take
    - AtomIterator::seek_reader
    - Result::end
    - Err
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn seek_atom_end(&mut self) -> Result<()>whereR: MediaSource,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:804,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:805,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:807,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:807,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:809,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:813,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:813,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:818,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:821,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 1
    argNames:
    - pos
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 822
      start: 799
    functionDepth: 12
    functionLinenumber: 799
    functionLinenumberEnd: 822
    functionName: AtomIterator::seek_reader
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 3
    functionsReached:
    - pos
    - is_seekable
    - SeekFrom::Start
    - seek_buffered
    - seek
    - Err
    - Ok
    - ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn seek_reader(&mut self, pos: u64) -> Result<()>whereR: MediaSource,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: last
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:827,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:827,1
    - Dst: Option::end
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:829,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:831,1
    - Dst: Option::data_pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:833,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:837,1
    - Dst: Option::saturating_sub
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:840,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:841,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:841,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:843,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 845
      start: 825
    functionDepth: 10
    functionLinenumber: 825
    functionLinenumberEnd: 845
    functionName: AtomIterator::data_left
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 2
    functionsReached:
    - Option::saturating_sub
    - last
    - pos
    - Some
    - Option::data_pos
    - Option::end
    - Err
    - Ok
    - ok_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn data_left(&self) -> Result<Option<u64>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:856,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:856,1
    - Dst: AtomIterator::seek_reader
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:859,1
    - Dst: read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:862,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:864,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - pos
    - len
    argTypes:
    - u64
    - usize
    constantsTouched: []
    func_position:
      end: 865
      start: 851
    functionDepth: 13
    functionLinenumber: 851
    functionLinenumberEnd: 865
    functionName: AtomIterator::read_raw_boxed_slice_exact
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - read_boxed_slice_exact
    - as_ref
    - AtomIterator::seek_reader
    - Ok
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_raw_boxed_slice_exact(&mut self, pos: u64, len:
      usize) -> Result<Box<[u8]>>whereR: MediaSource,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:876,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:876,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:876,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 877
      start: 875
    functionDepth: 0
    functionLinenumber: 875
    functionLinenumberEnd: 877
    functionName: AtomIterator::ensure_no_pending_atom
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 2
    functionsReached:
    - is_some
    - Ok
    - Err
    linkageType: ''
    returnType: Result
    signature: fn ensure_no_pending_atom(&self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_no_pending_atom
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:883,1
    - Dst: AtomIterator::data_left
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:886,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:888,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:892,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - num_bytes
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 893
      start: 881
    functionDepth: 11
    functionLinenumber: 881
    functionLinenumberEnd: 893
    functionName: AtomIterator::ensure_parent_atom_data
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 8
    functionsReached:
    - AtomIterator::data_left
    - Ok
    - AtomIterator::ensure_no_pending_atom
    - Err
    linkageType: ''
    returnType: Result
    signature: 'fn ensure_parent_atom_data(&self, num_bytes: u64) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:898,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:899,1
    - Dst: read_u8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:899,1
    - Dst: read_be_u24
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:899,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 900
      start: 897
    functionDepth: 12
    functionLinenumber: 897
    functionLinenumberEnd: 900
    functionName: AtomIterator::read_extended_header
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - read_be_u24
    - Ok
    - AtomIterator::ensure_parent_atom_data
    - read_u8
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_extended_header(&mut self) -> Result<(u8, u32)>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:905,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:905,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:906,1
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:906,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 907
      start: 904
    functionDepth: 12
    functionLinenumber: 904
    functionLinenumberEnd: 907
    functionName: AtomIterator::read_buf_exact
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 3
    functionsReached:
    - Ok
    - AtomIterator::ensure_parent_atom_data
    - read_buf_exact
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_buf_exact(&mut self, buf: &mut [u8]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:913,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:914,1
    - Dst: read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:914,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 915
      start: 912
    functionDepth: 12
    functionLinenumber: 912
    functionLinenumberEnd: 915
    functionName: AtomIterator::read_boxed_slice_exact
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - read_boxed_slice_exact
    - Ok
    - AtomIterator::ensure_parent_atom_data
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_boxed_slice_exact(&mut self, len: usize) -> Result<Box<[u8]>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:920,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:921,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - count
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 922
      start: 919
    functionDepth: 12
    functionLinenumber: 919
    functionLinenumberEnd: 922
    functionName: AtomIterator::ignore_bytes
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - AtomIterator::ensure_parent_atom_data
    - ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn ignore_bytes(&mut self, count: u64) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_no_pending_atom
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:927,1
    - Dst: AtomIterator::data_left
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:931,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:931,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:933,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:939,1
    - Dst: read_u8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:942,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:950,1
    - Dst: String::from_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:954,1
    - Dst: map_err
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:954,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 955
      start: 925
    functionDepth: 11
    functionLinenumber: 925
    functionLinenumberEnd: 955
    functionName: AtomIterator::read_null_terminated_utf8
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - String::from_utf8
    - map_err
    - AtomIterator::ensure_no_pending_atom
    - Result::push
    - read_u8
    - Vec::new
    - Err
    - AtomIterator::data_left
    - unwrap_or
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_null_terminated_utf8(&mut self) -> Result<String>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:960,1
    - Dst: std::mem::size_of::<u8>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:960,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:961,1
    - Dst: read_byte
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 962
      start: 959
    functionDepth: 12
    functionLinenumber: 959
    functionLinenumberEnd: 962
    functionName: AtomIterator::read_byte
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 2
    functionsReached:
    - std::mem::size_of::<u8>
    - Ok
    - read_byte
    - AtomIterator::ensure_parent_atom_data
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_byte(&mut self) -> Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:967,1
    - Dst: std::mem::size_of::<[u8; 2]>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:967,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:968,1
    - Dst: read_double_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:968,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 969
      start: 966
    functionDepth: 12
    functionLinenumber: 966
    functionLinenumberEnd: 969
    functionName: AtomIterator::read_double_bytes
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 2
    functionsReached:
    - std::mem::size_of::<[u8; 2]>
    - AtomIterator::ensure_parent_atom_data
    - read_double_bytes
    - Ok
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_double_bytes(&mut self) -> Result<[u8; 2]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:975,1
    - Dst: std::mem::size_of::<[u8; 3]>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:975,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:976,1
    - Dst: read_triple_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:976,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 977
      start: 974
    functionDepth: 12
    functionLinenumber: 974
    functionLinenumberEnd: 977
    functionName: AtomIterator::read_triple_bytes
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 1
    functionsReached:
    - std::mem::size_of::<[u8; 3]>
    - AtomIterator::ensure_parent_atom_data
    - read_triple_bytes
    - Ok
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_triple_bytes(&mut self) -> Result<[u8; 3]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::ensure_parent_atom_data
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:982,1
    - Dst: std::mem::size_of::<[u8; 4]>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:982,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:983,1
    - Dst: read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:983,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 984
      start: 981
    functionDepth: 12
    functionLinenumber: 981
    functionLinenumberEnd: 984
    functionName: AtomIterator::read_quad_bytes
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 3
    functionsReached:
    - read_quad_bytes
    - Ok
    - AtomIterator::ensure_parent_atom_data
    - std::mem::size_of::<[u8; 4]>
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_quad_bytes(&mut self) -> Result<[u8; 4]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AtomIterator::read_byte
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:989,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 990
      start: 988
    functionDepth: 13
    functionLinenumber: 988
    functionLinenumberEnd: 990
    functionName: AtomIterator::read_u8
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - AtomIterator::read_byte
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_u8(&mut self) -> Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:996,1
    - Dst: AtomIterator::read_byte
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 997
      start: 995
    functionDepth: 13
    functionLinenumber: 995
    functionLinenumberEnd: 997
    functionName: AtomIterator::read_i8
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - AtomIterator::read_byte
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_i8(&mut self) -> Result<i8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1003,1
    - Dst: u16::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1003,1
    - Dst: AtomIterator::read_double_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1002
    functionDepth: 13
    functionLinenumber: 1002
    functionLinenumberEnd: 1004
    functionName: AtomIterator::read_u16
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - AtomIterator::read_double_bytes
    - u16::from_be_bytes
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_u16(&mut self) -> Result<u16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1011,1
    - Dst: i16::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1011,1
    - Dst: AtomIterator::read_double_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1011,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1010
    functionDepth: 13
    functionLinenumber: 1010
    functionLinenumberEnd: 1012
    functionName: AtomIterator::read_i16
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - i16::from_be_bytes
    - AtomIterator::read_double_bytes
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_i16(&mut self) -> Result<i16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<u32>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1019,1
    - Dst: clone_from_slice
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1020,1
    - Dst: AtomIterator::read_triple_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1020,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1021,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1021,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1018
    functionDepth: 13
    functionLinenumber: 1018
    functionLinenumberEnd: 1022
    functionName: AtomIterator::read_u24
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 1
    functionsReached:
    - std::mem::size_of::<u32>
    - u32::from_be_bytes
    - clone_from_slice
    - Ok
    - AtomIterator::read_triple_bytes
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_u24(&mut self) -> Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1029,1
    - Dst: AtomIterator::read_u24
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1029,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1028
    functionDepth: 14
    functionLinenumber: 1028
    functionLinenumberEnd: 1030
    functionName: AtomIterator::read_i24
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - AtomIterator::read_u24
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_i24(&mut self) -> Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1036,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1036,1
    - Dst: AtomIterator::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1036,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 13
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: AtomIterator::read_u32
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - u32::from_be_bytes
    - AtomIterator::read_quad_bytes
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_u32(&mut self) -> Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1044,1
    - Dst: i32::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1044,1
    - Dst: AtomIterator::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1044,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1043
    functionDepth: 13
    functionLinenumber: 1043
    functionLinenumberEnd: 1045
    functionName: AtomIterator::read_i32
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - i32::from_be_bytes
    - AtomIterator::read_quad_bytes
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_i32(&mut self) -> Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<u64>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1051,1
    - Dst: AtomIterator::read_buf_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1052,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1053,1
    - Dst: u64::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1053,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1050
    functionDepth: 13
    functionLinenumber: 1050
    functionLinenumberEnd: 1054
    functionName: AtomIterator::read_u64
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - u64::from_be_bytes
    - Ok
    - AtomIterator::read_buf_exact
    - std::mem::size_of::<u64>
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_u64(&mut self) -> Result<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<i64>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1061,1
    - Dst: AtomIterator::read_buf_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1062,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1063,1
    - Dst: i64::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1063,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1060
    functionDepth: 13
    functionLinenumber: 1060
    functionLinenumberEnd: 1064
    functionName: AtomIterator::read_i64
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - i64::from_be_bytes
    - AtomIterator::read_buf_exact
    - std::mem::size_of::<i64>
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_i64(&mut self) -> Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1071,1
    - Dst: f32::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1071,1
    - Dst: AtomIterator::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1070
    functionDepth: 13
    functionLinenumber: 1070
    functionLinenumberEnd: 1072
    functionName: AtomIterator::read_f32
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - f32::from_be_bytes
    - Ok
    - AtomIterator::read_quad_bytes
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_f32(&mut self) -> Result<f32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<u64>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1078,1
    - Dst: AtomIterator::read_buf_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1079,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1080,1
    - Dst: f64::from_be_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs:1080,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1077
    functionDepth: 13
    functionLinenumber: 1077
    functionLinenumberEnd: 1081
    functionName: AtomIterator::read_f64
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - AtomIterator::read_buf_exact
    - f64::from_be_bytes
    - std::mem::size_of::<u64>
    linkageType: ''
    returnType: Result
    signature: pub(crate) fn read_f64(&mut self) -> Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:46,1
    - Dst: io::Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:49,1
    - Dst: io::Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:51,1
    - Dst: HandlerType::Other
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:59,1
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:65,1
    - Dst: io::Result::data_left
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:69,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:69,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:71,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:69,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:74,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:75,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:75,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs:78,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 79
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 79
    functionName: HdlrAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_boxed_slice_exact
    - io::Result::ignore_bytes
    - io::Result::read_quad_bytes
    - io::Result::data_left
    - Error::DecodeError
    - min
    - HandlerType::Other
    - to_string
    - Ok
    - String::from_utf8_lossy
    - io::Result::read_extended_header
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:47,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:49,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:52,1
    - Dst: unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:56,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:60,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:62,1
    - Dst: Result::atom_type
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:65,1
    - Dst: read_atom::<AudioSampleEntry>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:84,1
    - Dst: SampleEntry::Audio
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:85,1
    - Dst: read_atom::<VisualSampleEntry>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:96,1
    - Dst: SampleEntry::Visual
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:97,1
    - Dst: read_atom::<SubtitleSampleEntry>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:102,1
    - Dst: SampleEntry::Subtitle
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:103,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:111,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 112
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 112
    functionName: StsdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - read_atom::<AudioSampleEntry>
    - SampleEntry::Subtitle
    - io::Result::next_header
    - read_atom::<VisualSampleEntry>
    - Result::atom_type
    - unsupported_error
    - io::Result::read_u32
    - SampleEntry::Audio
    - SampleEntry::Visual
    - read_atom::<SubtitleSampleEntry>
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:120,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:120,1
    - Dst: make_codec_params
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:120,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:121,1
    - Dst: CodecParameters::Video
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:121,1
    - Dst: make_codec_params
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:121,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:123,1
    - Dst: CodecParameters::Subtitle
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:123,1
    - Dst: make_codec_params
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 127
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 127
    functionName: StsdAtom::make_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - CodecParameters::Subtitle
    - make_codec_params
    - CodecParameters::Video
    - Some
    - CodecParameters::Audio
    linkageType: ''
    returnType: Option
    signature: pub fn make_codec_params(&self) -> Option<CodecParameters>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:161,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:164,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:167,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 170
      start: 157
    functionDepth: 15
    functionLinenumber: 157
    functionLinenumberEnd: 170
    functionName: AudioSampleEntry::make_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - Default::default
    - Some
    - clone
    linkageType: ''
    returnType: AudioCodecParameters
    signature: pub(crate) fn make_codec_params(&self) -> AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:186,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:189,1
    - Dst: AudioSampleEntry::default
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:193,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:196,1
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:199,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:201,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:201,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:202,1
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:205,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:207,1
    - Dst: FpU16::parse_raw
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:207,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:207,1
    - Dst: is_pcm_codec
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:209,1
    - Dst: pcm_codec_id
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:215,1
    - Dst: bytes_per_pcm_sample
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:216,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:220,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:221,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:223,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:224,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:225,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:226,1
    - Dst: pcm_channels
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:226,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:234,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:238,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:242,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:245,1
    - Dst: pcm_codec_id
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:248,1
    - Dst: bytes_per_pcm_sample
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:249,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:254,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:259,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:260,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:261,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:262,1
    - Dst: pcm_channels
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:262,1
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:267,1
    - Dst: io::Result::read_f64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:269,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:270,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:272,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:273,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:279,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:280,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:281,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:282,1
    - Dst: lpcm_codec_id
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:285,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:290,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:291,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:292,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:292,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:293,1
    - Dst: lpcm_channels
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:293,1
    - Dst: unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:297,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:301,1
    - Dst: read_atom::<EsdsAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:304,1
    - Dst: Result::fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:305,1
    - Dst: read_atom::<Dac3Atom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:308,1
    - Dst: Result::fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:309,1
    - Dst: read_atom::<AlacAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:312,1
    - Dst: Result::fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:313,1
    - Dst: read_atom::<Dec3Atom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:316,1
    - Dst: Result::fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:317,1
    - Dst: read_atom::<FlacAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:320,1
    - Dst: Result::fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:321,1
    - Dst: read_atom::<OpusAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:324,1
    - Dst: Result::fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:325,1
    - Dst: read_atom::<WaveAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:330,1
    - Dst: Result::fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:331,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:344,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 266
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 345
      start: 174
    functionDepth: 15
    functionLinenumber: 174
    functionLinenumberEnd: 345
    functionName: AudioSampleEntry::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - read_atom::<Dac3Atom>
    - Ok
    - io::Result::next_header
    - Result::fill_audio_sample_entry
    - bytes_per_pcm_sample
    - read_atom::<EsdsAtom>
    - read_atom::<Dec3Atom>
    - AudioSampleEntry::default
    - read_atom::<FlacAtom>
    - u32::from
    - u64::from
    - io::Result::ignore_bytes
    - io::Result::read_u16
    - unsupported_error
    - io::Result::read_u32
    - f64::from
    - Some
    - is_pcm_codec
    - lpcm_codec_id
    - FpU16::parse_raw
    - lpcm_channels
    - pcm_codec_id
    - atoms::decode_error
    - read_atom::<WaveAtom>
    - read_atom::<OpusAtom>
    - read_atom::<AlacAtom>
    - pcm_channels
    - io::Result::read_f64
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pcm_codec_id
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - atype
    argTypes:
    - AtomType
    constantsTouched: []
    func_position:
      end: 353
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 353
    functionName: is_pcm_codec
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 1
    functionsReached:
    - pcm_codec_id
    linkageType: ''
    returnType: bool
    signature: 'fn is_pcm_codec(atype: AtomType) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - atype
    argTypes:
    - AtomType
    constantsTouched: []
    func_position:
      end: 367
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 367
    functionName: pcm_codec_id
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: AudioCodecId
    signature: 'fn pcm_codec_id(atype: AtomType) -> AudioCodecId'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - pcm_codec_id
    argTypes:
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 383
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 383
    functionName: bytes_per_pcm_sample
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: 'fn bytes_per_pcm_sample(pcm_codec_id: AudioCodecId) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - bits_per_sample
    - lpcm_flags
    argTypes:
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 430
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 430
    functionName: lpcm_codec_id
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: AudioCodecId
    signature: 'fn lpcm_codec_id(bits_per_sample: u32, lpcm_flags: u32) -> AudioCodecId'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:435,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:435,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:436,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:436,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - num_channels
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 439
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 439
    functionName: pcm_channels
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 1
    functionsReached:
    - Channels::Positioned
    - Ok
    - atoms::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn pcm_channels(num_channels: u32) -> Result<Channels>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:444,1
    - Dst: unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:448,1
    - Dst: Position::from_bits
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:455,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:456,1
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:456,1
    - Dst: unsupported_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:457,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 1
    argNames:
    - num_channels
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 459
      start: 442
    functionDepth: 1
    functionLinenumber: 442
    functionLinenumberEnd: 459
    functionName: lpcm_channels
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 1
    functionsReached:
    - atoms::decode_error
    - unsupported_error
    - Position::from_bits
    - Channels::Positioned
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn lpcm_channels(num_channels: u32) -> Result<Channels>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:481,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:482,1
    - Dst: clone
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:484,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:485,1
    - Dst: Result::with_profile
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:489,1
    - Dst: Result::with_level
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:492,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 496
      start: 479
    functionDepth: 15
    functionLinenumber: 479
    functionLinenumberEnd: 496
    functionName: VisualSampleEntry::make_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - Some
    - Result::with_level
    - Result::with_profile
    - Default::default
    - clone
    linkageType: ''
    returnType: VideoCodecParameters
    signature: pub(crate) fn make_codec_params(&self) -> VideoCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:504,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:507,1
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:512,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:515,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:516,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:517,1
    - Dst: FpU16::parse_raw
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:517,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:517,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:518,1
    - Dst: FpU16::parse_raw
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:518,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:518,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:519,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:523,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:525,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:528,1
    - Dst: io::Result::read_u8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:528,1
    - Dst: io::Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:531,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:534,1
    - Dst: str::from_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:537,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:538,1
    - Dst: String::to_string
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:538,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:543,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:546,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:548,1
    - Dst: read_atom::<EsdsAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:551,1
    - Dst: Result::fill_video_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:552,1
    - Dst: read_atom::<AvcCAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:555,1
    - Dst: Result::fill_video_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:556,1
    - Dst: read_atom::<HvcCAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:559,1
    - Dst: Result::fill_video_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:560,1
    - Dst: read_atom::<DoviAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:563,1
    - Dst: Result::fill_video_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:564,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:572,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 112
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 573
      start: 500
    functionDepth: 15
    functionLinenumber: 500
    functionLinenumberEnd: 573
    functionName: VisualSampleEntry::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_buf_exact
    - Ok
    - read_atom::<HvcCAtom>
    - String::to_string
    - io::Result::next_header
    - read_atom::<EsdsAtom>
    - io::Result::read_u8
    - io::Result::ignore_bytes
    - io::Result::read_u16
    - read_atom::<DoviAtom>
    - io::Result::read_u32
    - f64::from
    - Some
    - read_atom::<AvcCAtom>
    - FpU16::parse_raw
    - Default::default
    - usize::from
    - atoms::decode_error
    - Result::fill_video_sample_entry
    - str::from_utf8
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SubtitleCodecParameters::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:593,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 600
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 600
    functionName: SubtitleSampleEntry::make_codec_params
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - Result::for_codec
    - SubtitleCodecParameters::new
    linkageType: ''
    returnType: SubtitleCodecParameters
    signature: pub(crate) fn make_codec_params(&self) -> SubtitleCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:608,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:611,1
    - Dst: io::Result::read_null_terminated_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:618,1
    - Dst: io::Result::read_null_terminated_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:619,1
    - Dst: io::Result::ignore_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:629,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:631,1
    - Dst: io::Result::read_null_terminated_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:634,1
    - Dst: io::Result::read_null_terminated_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:635,1
    - Dst: io::Result::read_null_terminated_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:636,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:644,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:647,1
    - Dst: read_atom::<BtrtAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:647,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:650,1
    - Dst: read_atom::<TxtcAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:650,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:661,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 55
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 662
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 662
    functionName: SubtitleSampleEntry::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - Ok
    - io::Result::next_header
    - io::Result::ignore_bytes
    - io::Result::read_u16
    - Some
    - read_atom::<BtrtAtom>
    - io::Result::read_null_terminated_utf8
    - read_atom::<TxtcAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:679,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:680,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:681,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:682,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 684
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 684
    functionName: BtrtAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - Ok
    - io::Result::read_u32
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:697,1
    - Dst: io::Result::read_null_terminated_utf8
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:698,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:699,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 700
      start: 696
    functionDepth: 0
    functionLinenumber: 696
    functionLinenumberEnd: 700
    functionName: TxtcAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_null_terminated_utf8
    - io::Result::read_extended_header
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:713,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:713,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - reader
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 714
      start: 712
    functionDepth: 14
    functionLinenumber: 712
    functionLinenumberEnd: 714
    functionName: ClapAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Result::read_u32
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(reader: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:733,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:734,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:735,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:736,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:737,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:738,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:739,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:740,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs:741,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 743
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 743
    functionName: PaspAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
    functionUses: 0
    functionsReached:
    - Ok
    - io::Result::read_u32
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mfhd.rs:20,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mfhd.rs:22,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mfhd.rs:24,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 25
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 25
    functionName: MfhdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mfhd.rs
    functionUses: 0
    functionsReached:
    - Ok
    - io::Result::read_extended_header
    - io::Result::read_u32
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::data_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:32,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:34,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:35,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:40,1
    - Dst: HEVCDecoderConfigurationRecord::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:43,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 46
      start: 27
    functionDepth: 17
    functionLinenumber: 27
    functionLinenumberEnd: 46
    functionName: HvcCAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - HEVCDecoderConfigurationRecord::read
    - Result::data_size
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:52,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:53,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut VisualSampleEntry'
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: HvcCAtom::fill_video_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs
    functionUses: 0
    functionsReached:
    - Some
    - push
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_video_sample_entry(self, entry: &mut VisualSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs:25,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs:27,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs:30,1
    - Dst: read_atom::<MehdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs:30,1
    - Dst: read_atom::<TrexAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs:33,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs:34,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs:40,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 41
      start: 23
    functionDepth: 10
    functionLinenumber: 23
    functionLinenumberEnd: 41
    functionName: MvexAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs
    functionUses: 0
    functionsReached:
    - io::Result::next_header
    - Some
    - read_atom::<TrexAtom>
    - Vec::new
    - Self::push
    - read_atom::<MehdAtom>
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs:20,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs:22,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs:27,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs:27,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs:30,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs:30,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs:33,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 34
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 34
    functionName: Co64Atom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_u32
    - min
    - io::Result::read_u64
    - Ok
    - io::Result::read_extended_header
    - Vec::with_capacity
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:33,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:38,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:38,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 1
    argNames:
    - sample_num
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 53
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 53
    functionName: StscAtom::find_entry_for_sample
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs
    functionUses: 0
    functionsReached:
    - get
    - expect
    - len
    linkageType: ''
    returnType: Option
    signature: 'pub fn find_entry_for_sample(&self, sample_num: u32) -> Option<&StscEntry>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:58,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:60,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:64,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:64,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:67,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:70,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:73,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:76,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:77,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:86,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:91,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:96,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:96,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:98,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:100,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:108,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs:112,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 97
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 113
      start: 57
    functionDepth: 10
    functionLinenumber: 57
    functionLinenumberEnd: 113
    functionName: StscAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs
    functionUses: 0
    functionsReached:
    - push
    - atoms::decode_error
    - Ok
    - io::Result::read_u32
    - min
    - Option::and_then
    - checked_mul
    - checked_add
    - io::Result::read_extended_header
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/edts.rs:22,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/edts.rs:25,1
    - Dst: read_atom::<ElstAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/edts.rs:25,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/edts.rs:31,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 32
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 32
    functionName: EdtsAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/edts.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Some
    - read_atom::<ElstAtom>
    - io::Result::next_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_mut
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:34,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:34,1
    - Dst: take_metadata
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: MoovAtom::take_metadata
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs
    functionUses: 0
    functionsReached:
    - and_then
    - as_mut
    - take_metadata
    linkageType: ''
    returnType: Option
    signature: pub fn take_metadata(&mut self) -> Option<MetadataRevision>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: MoovAtom::is_fragmented
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs
    functionUses: 0
    functionsReached:
    - is_some
    linkageType: ''
    returnType: bool
    signature: pub fn is_fragmented(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:46,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:50,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:53,1
    - Dst: read_atom::<MvhdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:53,1
    - Dst: read_atom::<TrakAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:56,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:57,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:60,1
    - Dst: read_atom::<MvexAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:60,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:63,1
    - Dst: read_atom::<UdtaAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:63,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:71,1
    - Dst: None::as_ref
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:75,1
    - Dst: Self::iter
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:77,1
    - Dst: iter
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:78,1
    - Dst: any
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:78,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs:86,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 61
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 87
      start: 44
    functionDepth: 10
    functionLinenumber: 44
    functionLinenumberEnd: 87
    functionName: MoovAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs
    functionUses: 0
    functionsReached:
    - read_atom::<UdtaAtom>
    - atoms::decode_error
    - any
    - io::Result::next_header
    - None::as_ref
    - Some
    - iter
    - read_atom::<MvhdAtom>
    - Vec::new
    - read_atom::<MvexAtom>
    - Self::push
    - Ok
    - read_atom::<TrakAtom>
    - Self::iter
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 2
    argNames:
    - _it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 18
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 18
    functionName: CttsAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ctts.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(_it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:32,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:35,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:38,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:42,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:42,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:47,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:47,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:48,1
    - Dst: bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:48,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:48,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:50,1
    - Dst: bits::sign_extend_leq64_to_i64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:50,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:50,1
    - Dst: bits::sign_extend_leq16_to_i16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:54,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:54,1
    - Dst: bits::sign_extend_leq16_to_i16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:55,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:55,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:57,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs:65,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 52
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 66
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 66
    functionName: ElstAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs
    functionUses: 0
    functionsReached:
    - push
    - atoms::decode_error
    - bits::sign_extend_leq16_to_i16
    - u64::from
    - i64::from
    - io::Result::read_u16
    - io::Result::read_u32
    - bits::sign_extend_leq64_to_i64
    - min
    - io::Result::read_u64
    - bits::sign_extend_leq32_to_i32
    - Ok
    - io::Result::read_extended_header
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:38,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:48,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:54,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:54,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:55,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:55,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:56,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:57,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:58,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:58,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:61,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:62,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:63,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:64,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:65,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:67,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:71,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:73,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:74,1
    - Dst: FpU8::parse_raw
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:75,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:75,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs:79,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 89
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 80
      start: 37
    functionDepth: 15
    functionLinenumber: 37
    functionLinenumberEnd: 80
    functionName: TkhdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - u64::from
    - io::Result::read_u16
    - io::Result::read_u32
    - io::Result::read_u64
    - Ok
    - Default::default
    - io::Result::read_extended_header
    - FpU8::parse_raw
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:29,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:31,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:35,1
    - Dst: io::Result::read_u64
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:35,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:40,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:40,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:45,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:45,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:50,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:50,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:55,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:55,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs:63,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 73
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 73
    functionName: TfhdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_u32
    - Some
    - io::Result::read_u64
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 24
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionName: MetaAtom::fmt
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: MetaAtom::take_metadata
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs
    functionUses: 0
    functionsReached:
    - take
    linkageType: ''
    returnType: Option
    signature: pub fn take_metadata(&mut self) -> Option<MetadataRevision>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs:37,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs:41,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs:44,1
    - Dst: read_atom::<IlstAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs:44,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs:51,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 52
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 52
    functionName: MetaAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs
    functionUses: 0
    functionsReached:
    - read_atom::<IlstAtom>
    - io::Result::next_header
    - Some
    - Ok
    - io::Result::read_extended_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:28,1
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:30,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:33,1
    - Dst: read_atom::<MfhdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:33,1
    - Dst: read_atom::<TrafAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:36,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:37,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:45,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:49,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs:51,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 52
      start: 26
    functionDepth: 10
    functionLinenumber: 26
    functionLinenumberEnd: 52
    functionName: MoofAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs
    functionUses: 0
    functionsReached:
    - read_atom::<MfhdAtom>
    - atoms::decode_error
    - io::Result::next_header
    - Result::pos
    - read_atom::<TrafAtom>
    - Some
    - Vec::new
    - Self::push
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/smhd.rs:21,1
    - Dst: FpI8::parse_raw
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/smhd.rs:24,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/smhd.rs:24,1
    - Dst: io::Result::read_u16
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/smhd.rs:27,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/smhd.rs:29,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 30
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 30
    functionName: SmhdAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/smhd.rs
    functionUses: 0
    functionsReached:
    - Ok
    - io::Result::read_u16
    - io::Result::read_extended_header
    - FpI8::parse_raw
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs:27,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs:30,1
    - Dst: read_atom::<SmhdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs:30,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs:33,1
    - Dst: read_atom::<StblAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs:33,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs:41,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs:44,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 45
      start: 23
    functionDepth: 1
    functionLinenumber: 23
    functionLinenumberEnd: 45
    functionName: MinfAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - read_atom::<SmhdAtom>
    - io::Result::next_header
    - Some
    - read_atom::<StblAtom>
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs:20,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs:22,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs:27,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs:27,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs:30,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs:30,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs:33,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 34
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 34
    functionName: StcoAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs
    functionUses: 0
    functionsReached:
    - io::Result::read_u32
    - min
    - Ok
    - io::Result::read_extended_header
    - Vec::with_capacity
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:29,1
    - Dst: io::Result::data_left
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:32,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:32,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:34,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:40,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:42,1
    - Dst: read_object_descriptor_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:45,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:49,1
    - Dst: ESDescriptor::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:49,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:55,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:58,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 59
      start: 28
    functionDepth: 15
    functionLinenumber: 28
    functionLinenumberEnd: 59
    functionName: EsdsAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - Some
    - Error::DecodeError
    - io::Result::data_left
    - read_object_descriptor_header
    - BufReader::new
    - ESDescriptor::read
    - Ok
    - io::Result::read_extended_header
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: codec_id_from_object_type_indication
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:66,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:73,1
    - Dst: AudioSpecificConfig::read
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:80,1
    - Dst: get_audio_codec_profile
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:81,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:85,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:88,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 38
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut AudioSampleEntry'
    constantsTouched: []
    func_position:
      end: 89
      start: 65
    functionDepth: 18
    functionLinenumber: 65
    functionLinenumberEnd: 89
    functionName: EsdsAtom::fill_audio_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs
    functionUses: 0
    functionsReached:
    - atoms::decode_error
    - get_audio_codec_profile
    - Some
    - Ok
    - AudioSpecificConfig::read
    - codec_id_from_object_type_indication
    linkageType: ''
    returnType: Result
    signature: 'pub fn fill_audio_sample_entry(self, entry: &mut AudioSampleEntry)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: codec_id_from_object_type_indication
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:94,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:101,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:107,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut VisualSampleEntry'
    constantsTouched: []
    func_position:
      end: 113
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 113
    functionName: EsdsAtom::fill_video_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs
    functionUses: 0
    functionsReached:
    - push
    - Ok
    - atoms::decode_error
    - codec_id_from_object_type_indication
    linkageType: ''
    returnType: Result
    signature: 'pub fn fill_video_sample_entry(self, entry: &mut VisualSampleEntry)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::data_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs:27,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs:29,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs:30,1
    - Dst: io::Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs:35,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 39
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 39
    functionName: DoviAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs
    functionUses: 0
    functionsReached:
    - Ok
    - atoms::decode_error
    - io::Result::read_boxed_slice_exact
    - Result::data_size
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut VisualSampleEntry'
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: DoviAtom::fill_video_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs
    functionUses: 0
    functionsReached:
    - push
    linkageType: ''
    returnType: void
    signature: 'pub fn fill_video_sample_entry(self, entry: &mut VisualSampleEntry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:42,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:42,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:44,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:47,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 1
    argNames:
    - sample_num
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 51
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 51
    functionName: SttsAtom::find_timing_for_sample
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs
    functionUses: 0
    functionsReached:
    - Some
    - u64::from
    linkageType: ''
    returnType: Option
    signature: 'pub fn find_timing_for_sample(&self, sample_num: u32) -> Option<(u64,
      u32)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:60,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:60,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:63,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 1
    argNames:
    - ts
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 72
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 72
    functionName: SttsAtom::find_sample_for_timestamp
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs
    functionUses: 0
    functionsReached:
    - Some
    - u64::from
    linkageType: ''
    returnType: Option
    signature: 'pub fn find_sample_for_timestamp(&self, ts: u64) -> Option<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::read_extended_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:77,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:79,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:83,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:83,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:88,1
    - Dst: io::Result::read_u32
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:89,1
    - Dst: u64::checked_add
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:92,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:92,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:92,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:94,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:98,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs:101,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 102
      start: 76
    functionDepth: 10
    functionLinenumber: 76
    functionLinenumberEnd: 102
    functionName: SttsAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs
    functionUses: 0
    functionsReached:
    - push
    - atoms::decode_error
    - u64::from
    - io::Result::read_u32
    - min
    - u64::checked_add
    - Ok
    - io::Result::read_extended_header
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:31,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:34,1
    - Dst: read_atom::<TkhdAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:34,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:37,1
    - Dst: read_atom::<EdtsAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:37,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:40,1
    - Dst: read_atom::<MdiaAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:40,1
    - Dst: decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:48,1
    - Dst: decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:53,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs:56,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 57
      start: 26
    functionDepth: 1
    functionLinenumber: 26
    functionLinenumberEnd: 57
    functionName: TrakAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs
    functionUses: 0
    functionsReached:
    - read_atom::<MdiaAtom>
    - read_atom::<EdtsAtom>
    - io::Result::next_header
    - Some
    - Ok
    - decode_error
    - read_atom::<TkhdAtom>
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Result::next_header
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs:21,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs:23,1
    - Dst: read_atom::<EsdsAtom>
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs:23,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs:27,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - it
    - _header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 28
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 28
    functionName: WaveAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs
    functionUses: 0
    functionsReached:
    - read_atom::<EsdsAtom>
    - Some
    - Ok
    - io::Result::next_header
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, _header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fill_audio_sample_entry
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs:34,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - entry
    argTypes:
    - '&mut AudioSampleEntry'
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: WaveAtom::fill_audio_sample_entry
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs
    functionUses: 0
    functionsReached:
    - Ok
    - fill_audio_sample_entry
    linkageType: ''
    returnType: Result
    signature: 'pub fn fill_audio_sample_entry(self, entry: &mut AudioSampleEntry)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::data_size
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:27,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:27,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:29,1
    - Dst: atoms::decode_error
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:32,1
    - Dst: FourCc::try_new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:36,1
    - Dst: io::Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:36,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:36,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:37,1
    - Dst: io::Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:40,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:47,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:47,1
    - Dst: io::Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:50,1
    - Dst: FourCc::try_new
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:51,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:52,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs:56,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 47
    argCount: 2
    argNames:
    - it
    - header
    argTypes:
    - '&mut AtomIterator<R>'
    - '&AtomHeader'
    constantsTouched: []
    func_position:
      end: 57
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 57
    functionName: FtypAtom::read
    functionSourceFile: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs
    functionUses: 0
    functionsReached:
    - push
    - atoms::decode_error
    - io::Result::read_quad_bytes
    - Error::DecodeError
    - Option::ok_or
    - min
    - FourCc::try_new
    - Result::data_size
    - Ok
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn read<R: ReadAtom>(it: &mut AtomIterator<R>, header: &AtomHeader)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::render_with
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:6,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:7,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:8,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:10,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 66
      start: 50
    functionDepth: 17
    functionLinenumber: 50
    functionLinenumberEnd: 66
    functionName: read_pcm_signed
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - into_sample
    - Ok
    - Result::render_with
    - iter_mut
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::render_with
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:6,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:7,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:8,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:10,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 84
      start: 68
    functionDepth: 17
    functionLinenumber: 68
    functionLinenumberEnd: 84
    functionName: read_pcm_unsigned
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - into_sample
    - Ok
    - Result::render_with
    - iter_mut
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::render_with
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:6,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:7,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:10,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 102
      start: 86
    functionDepth: 17
    functionLinenumber: 86
    functionLinenumberEnd: 102
    functionName: read_pcm_floating
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Result::render_with
    - iter_mut
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::render_with
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:6,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:7,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:10,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 120
      start: 104
    functionDepth: 17
    functionLinenumber: 104
    functionLinenumberEnd: 120
    functionName: read_pcm_transfer_func
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Result::render_with
    - iter_mut
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i16::from
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:157,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 1
    argNames:
    - a_val
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 167
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 167
    functionName: alaw_to_linear
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - i16::from
    linkageType: ''
    returnType: i16
    signature: 'fn alaw_to_linear(mut a_val: u8) -> i16'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i16::from
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - mu_val
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 181
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 181
    functionName: mulaw_to_linear
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - i16::from
    linkageType: ''
    returnType: i16
    signature: 'fn mulaw_to_linear(mut mu_val: u8) -> i16'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - codec_id
    argTypes:
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 207
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 207
    functionName: is_supported_pcm_codec
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'fn is_supported_pcm_codec(codec_id: AudioCodecId) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_supported_pcm_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:222,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:223,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:228,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:233,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:234,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:237,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:237,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:240,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:245,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:268,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:276,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:282,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:287,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:288,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:296,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:299,1
    - Dst: AudioSpec::channels
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:310,1
    - Dst: '&Channels::count'
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:310,1
    - Dst: GenericAudioBuffer::new
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:313,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:315,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:315,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 107
    argCount: 2
    argNames:
    - params
    - _opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 316
      start: 220
    functionDepth: 10
    functionLinenumber: 220
    functionLinenumberEnd: 316
    functionName: PcmDecoder::try_new
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::decode_error
    - Option::clone
    - AudioSpec::channels
    - '&Channels::count'
    - symphonia_core::errors::unsupported_error
    - GenericAudioBuffer::new
    - is_supported_pcm_codec
    - Option::count
    - Ok
    - unwrap_or
    - AudioSpec::new
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(params: &AudioCodecParameters, _opts: &AudioDecoderOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:320,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:323,1
    - Dst: grow_capacity
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:324,1
    - Dst: Result::as_buf_reader
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:326,1
    - Dst: read_pcm_signed
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:330,1
    - Dst: read_pcm_signed
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:333,1
    - Dst: read_pcm_signed
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:336,1
    - Dst: read_pcm_signed
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:339,1
    - Dst: read_pcm_signed
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:342,1
    - Dst: read_pcm_signed
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:345,1
    - Dst: read_pcm_signed
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:348,1
    - Dst: read_pcm_unsigned
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:351,1
    - Dst: read_pcm_unsigned
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:354,1
    - Dst: read_pcm_unsigned
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:357,1
    - Dst: read_pcm_unsigned
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:360,1
    - Dst: read_pcm_unsigned
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:363,1
    - Dst: read_pcm_unsigned
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:366,1
    - Dst: read_pcm_unsigned
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:369,1
    - Dst: read_pcm_floating
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:372,1
    - Dst: read_pcm_floating
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:375,1
    - Dst: read_pcm_floating
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:378,1
    - Dst: read_pcm_floating
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:381,1
    - Dst: read_pcm_transfer_func
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:384,1
    - Dst: read_pcm_transfer_func
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:387,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:407,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 411
      start: 318
    functionDepth: 18
    functionLinenumber: 318
    functionLinenumberEnd: 411
    functionName: PcmDecoder::decode_inner
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - read_pcm_unsigned
    - len
    - Ok
    - symphonia_core::errors::unsupported_error
    - Result::as_buf_reader
    - read_pcm_signed
    - grow_capacity
    - clear
    - read_pcm_floating
    - read_pcm_transfer_func
    linkageType: ''
    returnType: Result
    signature: 'fn decode_inner(&mut self, packet: &PacketRef<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 417
      start: 415
    functionDepth: 0
    functionLinenumber: 415
    functionLinenumberEnd: 417
    functionName: PcmDecoder::reset
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::supported_codecs
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:421,1
    - Dst: '&''static [SupportedAudioCodec]::iter'
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:421,1
    - Dst: find
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:421,1
    - Dst: GASubbandInfo::expect
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 426
      start: 419
    functionDepth: 11
    functionLinenumber: 419
    functionLinenumberEnd: 426
    functionName: PcmDecoder::codec_info
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - '&''static [SupportedAudioCodec]::iter'
    - find
    - Self::supported_codecs
    - GASubbandInfo::expect
    linkageType: ''
    returnType: '&CodecInfo'
    signature: fn codec_info(&self) -> &CodecInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 430
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 430
    functionName: PcmDecoder::codec_params
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioCodecParameters'
    signature: fn codec_params(&self) -> &AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: PcmDecoder::decode_inner
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:433,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:434,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:435,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:438,1
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 440
      start: 432
    functionDepth: 19
    functionLinenumber: 432
    functionLinenumberEnd: 440
    functionName: PcmDecoder::decode_ref
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - PcmDecoder::decode_inner
    - Ok
    - as_generic_audio_buffer_ref
    - Err
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ref(&mut self, packet: &PacketRef<''_>) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 444
      start: 442
    functionDepth: 15
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionName: PcmDecoder::finalize
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: FinalizeResult
    signature: fn finalize(&mut self) -> FinalizeResult
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: PcmDecoder::last_decoded
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn last_decoded(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:459,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:459,1
    - Dst: PcmDecoder::try_new
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 460
      start: 452
    functionDepth: 10
    functionLinenumber: 452
    functionLinenumberEnd: 460
    functionName: PcmDecoder::try_registry_new
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - PcmDecoder::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_registry_new(params: &AudioCodecParameters,opts: &AudioDecoderOptions,)
      -> Result<Box<dyn AudioDecoder>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:464,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:469,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:474,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:479,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:484,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:489,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:494,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:495,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:500,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:505,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:510,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:515,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:520,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:525,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:526,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:531,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:536,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:541,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:546,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-pcm/src/lib.rs:547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 639
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 639
    functionName: PcmDecoder::supported_codecs
    functionSourceFile: /src/symphonia/symphonia-codec-pcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_audio_codec
    linkageType: ''
    returnType: '&''static [SupportedAudioCodec]'
    signature: fn supported_codecs() -> &'static [SupportedAudioCodec]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::io::Cursor::new
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:10,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:12,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:12,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:12,1
    - Dst: AdtsReader::try_probe_new
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:14,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:14,1
    - Dst: AacDecoder::try_new
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:16,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:17,1
    - Dst: AudioCodecParameters::for_codec
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:17,1
    - Dst: AudioDecoderOptions::default
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:18,1
    - Dst: Result::next_packet
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:22,1
    - Dst: Option::decode
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:24,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:30,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 1
    argNames:
    - data
    argTypes:
    - Vec<u8>
    constantsTouched: []
    func_position:
      end: 31
      start: 9
    functionDepth: 10
    functionLinenumber: 9
    functionLinenumberEnd: 31
    functionName: test_decode
    functionSourceFile: /src/symphonia/symphonia-codec-aac/tests/tests.rs
    functionUses: 1
    functionsReached:
    - AacDecoder::try_new
    - AudioCodecParameters::for_codec
    - MediaSourceStream::new
    - Box::new
    - AudioCodecParameters::new
    - Option::decode
    - Result::next_packet
    - AdtsReader::try_probe_new
    - Ok
    - Default::default
    - AudioDecoderOptions::default
    - std::io::Cursor::new
    linkageType: ''
    returnType: symphonia_core::errors::Result
    signature: 'fn test_decode(data: Vec<u8>) -> symphonia_core::errors::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: test_decode
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:40,1
    - Dst: symphonia_core::errors::Result::unwrap_err
      Src: /src/symphonia/symphonia-codec-aac/tests/tests.rs:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 11
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: invalid_channels_aac
    functionSourceFile: /src/symphonia/symphonia-codec-aac/tests/tests.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::errors::Result::unwrap_err
    - test_decode
    linkageType: ''
    returnType: void
    signature: fn invalid_channels_aac()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AdtsHeader::read
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:51,1
    - Dst: Option::seek_buffered_rev
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:54,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:54,1
    - Dst: Result::header_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:54,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:57,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:59,1
    - Dst: '&mut Self::with_sample_rate'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:59,1
    - Dst: Result::with_channels
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:62,1
    - Dst: Track::new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:66,1
    - Dst: Result::with_codec_params
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:67,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:67,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:69,1
    - Dst: approximate_frame_count
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:71,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:73,1
    - Dst: Result::with_duration
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:75,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:75,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:78,1
    - Dst: MediaInfo::from_track
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:80,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:83,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:85,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 53
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 87
      start: 50
    functionDepth: 16
    functionLinenumber: 50
    functionLinenumberEnd: 87
    functionName: AdtsReader::try_new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 1
    functionsReached:
    - '&mut Self::with_sample_rate'
    - CodecParameters::Audio
    - Track::new
    - Ok
    - Result::with_duration
    - unwrap_or_default
    - AudioCodecParameters::new
    - Result::with_codec_params
    - Option::pos
    - Result::with_num_frames
    - MediaInfo::from_track
    - AdtsHeader::read
    - approximate_frame_count
    - Timestamp::new
    - usize::from
    - Result::with_channels
    - Result::header_len
    - Result::for_codec
    - Option::seek_buffered_rev
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AdtsHeader::read_no_resync
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:93,1
    - Dst: payload_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:99,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::bytes_available
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:101,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:101,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:102,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:102,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:105,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:105,1
    - Dst: AdtsHeader::read_no_resync
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:107,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:109,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:109,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 1
    argNames:
    - src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 110
      start: 91
    functionDepth: 15
    functionLinenumber: 91
    functionLinenumberEnd: 110
    functionName: AdtsReader::score
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - payload_len
    - u64::from
    - Score::Supported
    - ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
    - ScopedStream<&mut MediaSourceStream<'_>>::bytes_available
    - Ok
    - AdtsHeader::read_no_resync
    linkageType: ''
    returnType: Result
    signature: 'fn score(mut src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:144,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:144,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:146,1
    - Dst: get_mpeg4_audio_object_type_by_index
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:149,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:149,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:151,1
    - Dst: get_mpeg4_audio_sample_rate_by_index
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:155,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:155,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:157,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:158,1
    - Dst: i32::ignore_bit
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:162,1
    - Dst: get_mpeg4_audio_channels_by_config_index
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:165,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:165,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:166,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:169,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:174,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:177,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:181,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:185,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:188,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:192,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:196,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:196,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:198,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 78
    argCount: 2
    argNames:
    - reader
    - has_crc
    argTypes:
    - '&mut B'
    - bool
    constantsTouched: []
    func_position:
      end: 199
      start: 138
    functionDepth: 13
    functionLinenumber: 138
    functionLinenumberEnd: 199
    functionName: AdtsHeader::read_body
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - get_mpeg4_audio_sample_rate_by_index
    - i32::ignore_bits
    - i32::read_bits_leq32
    - symphonia_core::errors::unsupported_error
    - Result::read_buf_exact
    - get_mpeg4_audio_object_type_by_index
    - Some
    - i32::ignore_bit
    - BitReaderLtr::new
    - Ok
    - symphonia_core::errors::decode_error
    - get_mpeg4_audio_channels_by_config_index
    linkageType: ''
    returnType: Result
    signature: 'fn read_body<B: ReadBytes>(reader: &mut B, has_crc: bool) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sync
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 205
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionName: AdtsHeader::is_sync_word
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'fn is_sync_word(sync: u16) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::is_sync_word
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:211,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:212,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:212,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 216
      start: 208
    functionDepth: 14
    functionLinenumber: 208
    functionLinenumberEnd: 216
    functionName: AdtsHeader::sync
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 1
    functionsReached:
    - Ok
    - u16::from
    - Result::read_u8
    - Self::is_sync_word
    linkageType: ''
    returnType: Result
    signature: 'fn sync<B: ReadBytes>(reader: &mut B) -> Result<u16>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:220,1
    - Dst: Self::is_sync_word
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:222,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:223,1
    - Dst: Self::read_body
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:227,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 228
      start: 219
    functionDepth: 14
    functionLinenumber: 219
    functionLinenumberEnd: 228
    functionName: AdtsHeader::read_no_resync
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 1
    functionsReached:
    - Self::read_body
    - symphonia_core::errors::decode_error
    - Result::read_be_u16
    - Self::is_sync_word
    linkageType: ''
    returnType: Result
    signature: 'fn read_no_resync<B: ReadBytes>(reader: &mut B) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AdtsHeader::sync
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:232,1
    - Dst: Self::read_body
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 236
      start: 231
    functionDepth: 15
    functionLinenumber: 231
    functionLinenumberEnd: 236
    functionName: AdtsHeader::read
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 4
    functionsReached:
    - AdtsHeader::sync
    - Self::read_body
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBytes>(reader: &mut B) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 242
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionName: AdtsHeader::header_len
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 1
    functionsReached:
    - is_some
    linkageType: ''
    returnType: u16
    signature: fn header_len(&self) -> u16
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AdtsHeader::header_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 248
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionName: AdtsHeader::payload_len
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - AdtsHeader::header_len
    linkageType: ''
    returnType: u16
    signature: fn payload_len(&self) -> u16
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:256,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:256,1
    - Dst: AdtsReader::try_new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 257
      start: 252
    functionDepth: 10
    functionLinenumber: 252
    functionLinenumberEnd: 257
    functionName: AdtsReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 1
    functionsReached:
    - AdtsReader::try_new
    - Ok
    - Box::new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 271
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 271
    functionName: AdtsReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 277
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionName: AdtsReader::format_info
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: AdtsReader::media_info
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AdtsHeader::read
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:285,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:287,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:290,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:292,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:299,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:301,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:304,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:304,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:304,1
    - Dst: read_boxed_slice_exact
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:308,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:308,1
    - Dst: Result::payload_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 310
      start: 283
    functionDepth: 16
    functionLinenumber: 283
    functionLinenumberEnd: 310
    functionName: AdtsReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - AdtsHeader::read
    - read_boxed_slice_exact
    - Result::payload_len
    - Some
    - checked_add
    - Packet::new
    - Err
    - Ok
    - Result::kind
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 314
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionName: AdtsReader::metadata
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 318
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 318
    functionName: AdtsReader::chapters
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 322
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 322
    functionName: AdtsReader::tracks
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ok_or
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:333,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:333,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:336,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:336,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:336,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:346,1
    - Dst: seek
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:347,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:347,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:352,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:356,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:360,1
    - Dst: AdtsHeader::read
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:367,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:369,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:372,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:374,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:379,1
    - Dst: seek_buffered_rev
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:385,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:385,1
    - Dst: Result::header_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:385,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:391,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:391,1
    - Dst: Result::payload_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:391,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:403,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 87
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 404
      start: 324
    functionDepth: 11
    functionLinenumber: 324
    functionLinenumberEnd: 404
    functionName: AdtsReader::seek
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Result::payload_len
    - is_seekable
    - checked_add
    - Result::kind
    - AdtsHeader::read
    - u64::from
    - symphonia_core::errors::seek_error
    - usize::from
    - Timestamp::from
    - calc_timestamp
    - Error::SeekError
    - SeekFrom::Start
    - seek
    - seek_buffered_rev
    - Err
    - Result::header_len
    - ignore_bytes
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 411
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 411
    functionName: AdtsReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut MediaSourceStream<''_>::pos'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:415,1
    - Dst: '&mut MediaSourceStream<''_>::byte_len'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:416,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:418,1
    - Dst: '&mut MediaSourceStream<''_>::is_seekable'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:424,1
    - Dst: '&mut MediaSourceStream<''_>::ensure_seekback_buffer'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:428,1
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:429,1
    - Dst: AdtsHeader::read
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:431,1
    - Dst: Self::ignore_bytes
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:432,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:432,1
    - Dst: Result::payload_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:432,1
    - Dst: Result::is_err
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:432,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:437,1
    - Dst: '&mut MediaSourceStream<''_>::seek_buffered'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:440,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:452,1
    - Dst: '&mut MediaSourceStream<''_>::pos'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:454,1
    - Dst: '&mut MediaSourceStream<''_>::seek'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:458,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:458,1
    - Dst: Result::is_err
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:458,1
    - Dst: AdtsHeader::read
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:463,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:469,1
    - Dst: '&mut MediaSourceStream<''_>::ignore_bytes'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:472,1
    - Dst: Result::payload_len
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:472,1
    - Dst: Result::is_err
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:472,1
    - Dst: '&mut MediaSourceStream<''_>::seek'
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:479,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:479,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:485,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:486,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:486,1
    - Dst: get
      Src: /src/symphonia/symphonia-codec-aac/src/adts.rs:486,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 108
    argCount: 1
    argNames:
    - source
    argTypes:
    - '&mut MediaSourceStream<''_>'
    constantsTouched: []
    func_position:
      end: 488
      start: 414
    functionDepth: 16
    functionLinenumber: 414
    functionLinenumberEnd: 488
    functionName: approximate_frame_count
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/adts.rs
    functionUses: 1
    functionsReached:
    - Result::is_err
    - '&mut MediaSourceStream<''_>::byte_len'
    - AdtsHeader::read
    - '&mut MediaSourceStream<''_>::seek'
    - u64::from
    - get
    - Result::payload_len
    - '&mut MediaSourceStream<''_>::is_seekable'
    - '&mut MediaSourceStream<''_>::pos'
    - '&mut MediaSourceStream<''_>::seek_buffered'
    - Some
    - Self::ignore_bytes
    - step_by
    - SeekFrom::Start
    - ScopedStream::new
    - '&mut MediaSourceStream<''_>::ensure_seekback_buffer'
    - '&mut MediaSourceStream<''_>::ignore_bytes'
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn approximate_frame_count(mut source: &mut MediaSourceStream<''_>)
      -> Result<Option<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: sin
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:34,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:39,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:41,1
    - Dst: bessel_i0
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:44,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:46,1
    - Dst: sqrt
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:50,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 68
    argCount: 5
    argNames:
    - mode
    - scale
    - size
    - half
    - dst
    argTypes:
    - WindowType
    - f32
    - usize
    - bool
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 54
      start: 28
    functionDepth: 4
    functionLinenumber: 28
    functionLinenumberEnd: 54
    functionName: generate_window
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/window.rs
    functionUses: 1
    functionsReached:
    - f64::from
    - sin
    - sqrt
    - bessel_i0
    - Vec::with_capacity
    - push
    linkageType: ''
    returnType: void
    signature: 'pub fn generate_window(mode: WindowType, scale: f32, size: usize,
      half: bool, dst: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: rev
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:58,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/window.rs:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - inval
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 3
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: bessel_i0
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/window.rs
    functionUses: 1
    functionsReached:
    - rev
    - f64::from
    linkageType: ''
    returnType: f64
    signature: 'fn bessel_i0(inval: f64) -> f64'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - state
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: Lcg::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/common.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(state: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_mul
      Src: /src/symphonia/symphonia-codec-aac/src/aac/common.rs:92,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-aac/src/aac/common.rs:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: Lcg::next
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/common.rs
    functionUses: 1
    functionsReached:
    - wrapping_add
    - wrapping_mul
    linkageType: ''
    returnType: i32
    signature: pub fn next(&mut self) -> i32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-aac/src/aac/common.rs:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - srate
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 112
      start: 105
    functionDepth: 11
    functionLinenumber: 105
    functionLinenumberEnd: 112
    functionName: GASubbandInfo::find
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/common.rs
    functionUses: 1
    functionsReached:
    - iter
    linkageType: ''
    returnType: GASubbandInfo
    signature: 'pub fn find(srate: u32) -> GASubbandInfo'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-aac/src/aac/common.rs:115,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/common.rs:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - srate
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 11
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: GASubbandInfo::find_idx
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/common.rs
    functionUses: 1
    functionsReached:
    - enumerate
    - iter
    linkageType: ''
    returnType: usize
    signature: 'pub fn find_idx(srate: u32) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/common.rs:4,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 194
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 194
    functionName: validate
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/common.rs
    functionUses: 7
    functionsReached:
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_window
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:37,1
    - Dst: WindowType::KaiserBessel
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:37,1
    - Dst: generate_window
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:38,1
    - Dst: WindowType::KaiserBessel
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:38,1
    - Dst: generate_window
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:41,1
    - Dst: generate_window
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:42,1
    - Dst: Imdct::new_scaled
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:49,1
    - Dst: Imdct::new_scaled
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 54
      start: 34
    functionDepth: 11
    functionLinenumber: 34
    functionLinenumberEnd: 54
    functionName: Dsp::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs
    functionUses: 1
    functionsReached:
    - generate_window
    - Imdct::new_scaled
    - WindowType::KaiserBessel
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: imdct
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:78,1
    - Dst: '&[f32; 1024]::chunks_exact'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:81,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:81,1
    - Dst: chunks_exact_mut
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:81,1
    - Dst: imdct
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:82,1
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:86,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:88,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:88,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:112,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:119,1
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:144,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:147,1
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs:154,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 224
    argCount: 6
    argNames:
    - coeffs
    - delay
    - seq
    - window_shape
    - prev_window_shape
    - dst
    argTypes:
    - '&[f32; 1024]'
    - '&mut [f32; 1024]'
    - u8
    - bool
    - bool
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 158
      start: 57
    functionDepth: 12
    functionLinenumber: 57
    functionLinenumberEnd: 158
    functionName: Dsp::synth
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs
    functionUses: 1
    functionsReached:
    - imdct
    - zip
    - chunks_exact_mut
    - fill
    - copy_from_slice
    - '&[f32; 1024]::chunks_exact'
    - enumerate
    - chunks_exact
    linkageType: ''
    returnType: void
    signature: 'pub fn synth(&mut self,coeffs: &[f32; 1024],delay: &mut [f32; 1024],seq:
      u8,window_shape: bool,prev_window_shape: bool,dst: &mut [f32],)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:56,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:61,1
    - Dst: AudioSpecificConfig::read
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:62,1
    - Dst: AudioSpecificConfig::default
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:66,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:73,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:76,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:86,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:87,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:93,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:96,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:100,1
    - Dst: with_channels
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:102,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:102,1
    - Dst: '&mut Self::with_sample_rate'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:102,1
    - Dst: GASubbandInfo::find
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:104,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:106,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:106,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:108,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:108,1
    - Dst: dsp::Dsp::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:108,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 76
    argCount: 2
    argNames:
    - params
    - _opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 109
      start: 53
    functionDepth: 18
    functionLinenumber: 53
    functionLinenumberEnd: 109
    functionName: AacDecoder::try_new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 2
    functionsReached:
    - dsp::Dsp::new
    - Option::clone
    - Ok
    - AudioSpecificConfig::default
    - symphonia_core::errors::unsupported_error
    - validate
    - '&mut Self::with_sample_rate'
    - GASubbandInfo::find
    - Vec::new
    - Option::count
    - AudioBuffer::new
    - AudioSpecificConfig::read
    - with_channels
    - AudioSpec::new
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(params: &AudioCodecParameters, _opts: &AudioDecoderOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:112,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:113,1
    - Dst: cpe::ChannelPair::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:113,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:116,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:117,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:120,1
    - Dst: map_or
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:120,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:120,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:121,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 3
    argNames:
    - pair_no
    - channel
    - pair
    argTypes:
    - usize
    - usize
    - bool
    constantsTouched: []
    func_position:
      end: 124
      start: 111
    functionDepth: 10
    functionLinenumber: 111
    functionLinenumberEnd: 124
    functionName: AacDecoder::set_pair
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 1
    functionsReached:
    - len
    - as_ref
    - map_or
    - validate
    - cpe::ChannelPair::new
    - Option::count
    - Ok
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn set_pair(&mut self, pair_no: usize, channel: usize, pair: bool)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::bits_left
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:129,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:130,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:135,1
    - Dst: AacDecoder::set_pair
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:136,1
    - Dst: decode_ga_sce
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:137,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:143,1
    - Dst: AacDecoder::set_pair
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:144,1
    - Dst: decode_ga_cpe
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:145,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:151,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:155,1
    - Dst: AacDecoder::set_pair
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:156,1
    - Dst: decode_ga_sce
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:157,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:163,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:164,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:165,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:167,1
    - Dst: i32::realign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:170,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:172,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:176,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:180,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:182,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:189,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:204,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:206,1
    - Dst: GASubbandInfo::find_idx
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:217,1
    - Dst: synth_audio
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:219,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:221,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 149
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 222
      start: 126
    functionDepth: 16
    functionLinenumber: 126
    functionLinenumberEnd: 222
    functionName: AacDecoder::decode_ga
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 1
    functionsReached:
    - i32::ignore_bits
    - decode_ga_sce
    - i32::read_bits_leq32
    - symphonia_core::errors::unsupported_error
    - i32::realign
    - decode_ga_cpe
    - synth_audio
    - i32::bits_left
    - AacDecoder::set_pair
    - i32::read_bool
    - GASubbandInfo::find_idx
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ga<B: ReadBitsLtr + FiniteBitStream>(&mut self, bs: &mut
      B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:233,1
    - Dst: render_uninit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:234,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:236,1
    - Dst: AacDecoder::decode_ga
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:240,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:241,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 245
      start: 231
    functionDepth: 17
    functionLinenumber: 231
    functionLinenumberEnd: 245
    functionName: AacDecoder::decode_inner
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 1
    functionsReached:
    - Ok
    - symphonia_core::errors::unsupported_error
    - AacDecoder::decode_ga
    - render_uninit
    - BitReaderLtr::new
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_inner(&mut self, packet: &PacketRef<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:250,1
    - Dst: reset
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 13
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: AacDecoder::reset
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached:
    - reset
    - iter_mut
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::supported_codecs
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:257,1
    - Dst: '&''static [SupportedAudioCodec]::first'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:257,1
    - Dst: expect
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 2
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: AacDecoder::codec_info
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached:
    - '&''static [SupportedAudioCodec]::first'
    - expect
    - Self::supported_codecs
    linkageType: ''
    returnType: '&CodecInfo'
    signature: fn codec_info(&self) -> &CodecInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 262
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionName: AacDecoder::codec_params
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioCodecParameters'
    signature: fn codec_params(&self) -> &AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AacDecoder::decode_inner
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:265,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:266,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:267,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:270,1
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:270,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 272
      start: 264
    functionDepth: 18
    functionLinenumber: 264
    functionLinenumberEnd: 272
    functionName: AacDecoder::decode_ref
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    - AacDecoder::decode_inner
    - Err
    - Ok
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ref(&mut self, packet: &PacketRef<''_>) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 276
      start: 274
    functionDepth: 15
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionName: AacDecoder::finalize
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: FinalizeResult
    signature: fn finalize(&mut self) -> FinalizeResult
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 280
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionName: AacDecoder::last_decoded
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn last_decoded(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:291,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:291,1
    - Dst: AacDecoder::try_new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 292
      start: 284
    functionDepth: 10
    functionLinenumber: 284
    functionLinenumberEnd: 292
    functionName: AacDecoder::try_registry_new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - AacDecoder::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_registry_new(params: &AudioCodecParameters,opts: &AudioDecoderOptions,)
      -> Result<Box<dyn AudioDecoder>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 303
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 303
    functionName: AacDecoder::supported_codecs
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_audio_codec
    linkageType: ''
    returnType: '&''static [SupportedAudioCodec]'
    signature: fn supported_codecs() -> &'static [SupportedAudioCodec]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:504,1
    - Dst: io::Result::map
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 505
      start: 503
    functionDepth: 15
    functionLinenumber: 503
    functionLinenumberEnd: 505
    functionName: QuadsCodebook::read_quant
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 2
    functionsReached:
    - i32::read_codebook
    - io::Result::map
    linkageType: ''
    returnType: std::io::Result
    signature: 'pub fn read_quant<B: ReadBitsLtr>(&self, bs: &mut B) -> std::io::Result<(u8,
      u8, u8, u8)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - codebook
    argTypes:
    - Codebook<Entry16x16>
    constantsTouched: []
    func_position:
      end: 513
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionName: QuadsCodebook::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'fn new(codebook: Codebook<Entry16x16>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:526,1
    - Dst: io::Result::map
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:526,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 527
      start: 525
    functionDepth: 15
    functionLinenumber: 525
    functionLinenumberEnd: 527
    functionName: PairsCodebook::read_dequant
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 2
    functionsReached:
    - i32::read_codebook
    - io::Result::map
    linkageType: ''
    returnType: std::io::Result
    signature: 'pub fn read_dequant<B: ReadBitsLtr>(&self, bs: &mut B) -> std::io::Result<(f32,
      f32)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - codebook
    - values
    argTypes:
    - Codebook<Entry16x16>
    - Box<[Self::ValueType]>
    constantsTouched: []
    func_position:
      end: 535
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 535
    functionName: PairsCodebook::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'fn new(codebook: Codebook<Entry16x16>, values: Box<[Self::ValueType]>)
      -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:547,1
    - Dst: io::Result::map
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 548
      start: 546
    functionDepth: 15
    functionLinenumber: 546
    functionLinenumberEnd: 548
    functionName: EscapeCodebook::read_quant
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 1
    functionsReached:
    - i32::read_codebook
    - io::Result::map
    linkageType: ''
    returnType: std::io::Result
    signature: 'pub fn read_quant<B: ReadBitsLtr>(&self, bs: &mut B) -> std::io::Result<(u16,
      u16)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - codebook
    - values
    argTypes:
    - Codebook<Entry16x16>
    - Box<[Self::ValueType]>
    constantsTouched: []
    func_position:
      end: 556
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 556
    functionName: EscapeCodebook::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'fn new(codebook: Codebook<Entry16x16>, values: Box<[Self::ValueType]>)
      -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:564,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:567,1
    - Dst: CodebookBuilder::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:570,1
    - Dst: Self::bits_per_read
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:573,1
    - Dst: Self::make
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:575,1
    - Dst: (Self, Track)::expect
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 1
    argNames:
    - table
    argTypes:
    - '&VlcTable'
    constantsTouched: []
    func_position:
      end: 576
      start: 561
    functionDepth: 10
    functionLinenumber: 561
    functionLinenumberEnd: 576
    functionName: make_raw_codebook
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 2
    functionsReached:
    - len
    - Self::make
    - (Self, Track)::expect
    - collect
    - CodebookBuilder::new
    - Self::bits_per_read
    linkageType: ''
    returnType: Codebook
    signature: 'fn make_raw_codebook(table: &VlcTable) -> Codebook<Entry16x16>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: make_raw_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:585,1
    - Dst: len
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:588,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:588,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:588,1
    - Dst: C::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:590,1
    - Dst: u32::into_boxed_slice
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - table
    - f
    argTypes:
    - '&VlcTable'
    - F
    constantsTouched: []
    func_position:
      end: 591
      start: 580
    functionDepth: 11
    functionLinenumber: 580
    functionLinenumberEnd: 591
    functionName: make_value_codebook
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached:
    - len
    - C::new
    - u32::into_boxed_slice
    - map
    - collect
    - make_raw_codebook
    linkageType: ''
    returnType: C
    signature: 'fn make_value_codebook<C, F>(table: &VlcTable, f: F) -> CwhereC: MakeValueCodebook,F:
      Fn(usize) -> C::ValueType,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:598,1
    - Dst: make_raw_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - '&VlcTable'
    constantsTouched: []
    func_position:
      end: 599
      start: 594
    functionDepth: 10
    functionLinenumber: 594
    functionLinenumberEnd: 599
    functionName: make_basic_codebook
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached:
    - make_raw_codebook
    - C::new
    linkageType: ''
    returnType: C
    signature: 'fn make_basic_codebook<C>(table: &VlcTable) -> CwhereC: MakeBasicCodebook,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: powf
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:21,1
    - Dst: f32::powf
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:21,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - val
    argTypes:
    - f32
    constantsTouched: []
    func_position:
      end: 22
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionName: iquant
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs
    functionUses: 3
    functionsReached:
    - f32::powf
    - powf
    linkageType: ''
    returnType: f32
    signature: 'fn iquant(val: f32) -> f32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iquant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:613,1
    - Dst: iquant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:613,1
    - Dst: iquant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:614,1
    - Dst: iquant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:614,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - cw
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 617
      start: 607
    functionDepth: 1
    functionLinenumber: 607
    functionLinenumberEnd: 617
    functionName: signed_pair
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached:
    - iquant
    linkageType: ''
    returnType: (f32, f32)
    signature: 'fn signed_pair<const MOD: usize>(cw: usize) -> (f32, f32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iquant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:620,1
    - Dst: iquant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs:620,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - cw
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 621
      start: 619
    functionDepth: 1
    functionLinenumber: 619
    functionLinenumberEnd: 621
    functionName: unsigned_pair
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached:
    - iquant
    linkageType: ''
    returnType: (f32, f32)
    signature: 'fn unsigned_pair<const MOD: usize>(cw: usize) -> (f32, f32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - cw
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 625
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 625
    functionName: escape_pair
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: (u16, u16)
    signature: 'fn escape_pair<const MOD: usize>(cw: usize) -> (u16, u16)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ics::Ics::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:42,1
    - Dst: ics::Ics::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:43,1
    - Dst: Lcg::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - is_pair
    - channel
    - sbinfo
    argTypes:
    - bool
    - usize
    - GASubbandInfo
    constantsTouched: []
    func_position:
      end: 46
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 46
    functionName: ChannelPair::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs
    functionUses: 1
    functionsReached:
    - Lcg::new
    - ics::Ics::new
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(is_pair: bool, channel: usize, sbinfo: GASubbandInfo) ->
      Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:49,1
    - Dst: reset
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 13
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: ChannelPair::reset
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs
    functionUses: 0
    functionsReached:
    - reset
    linkageType: ''
    returnType: void
    signature: pub fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: decode
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:58,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - bs
    - aot
    argTypes:
    - '&mut B'
    - AudioObjectType
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: ChannelPair::decode_ga_sce
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs
    functionUses: 0
    functionsReached:
    - decode
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn decode_ga_sce<B: ReadBitsLtr>(&mut self,bs: &mut B,aot: AudioObjectType,)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:67,1
    - Dst: decode_info
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:72,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:75,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:94,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:98,1
    - Dst: copy_from_common
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:103,1
    - Dst: decode
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:106,1
    - Dst: decode
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:107,1
    - Dst: get_bands
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:111,1
    - Dst: is_intensity
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:124,1
    - Dst: get_intensity_dir
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:128,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:136,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:136,1
    - Dst: is_noise
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:140,1
    - Dst: is_noise
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:140,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:149,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:149,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:159,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 201
    argCount: 2
    argNames:
    - bs
    - aot
    argTypes:
    - '&mut B'
    - AudioObjectType
    constantsTouched: []
    func_position:
      end: 160
      start: 62
    functionDepth: 16
    functionLinenumber: 62
    functionLinenumberEnd: 160
    functionName: ChannelPair::decode_ga_cpe
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - copy_from_common
    - zip
    - get_intensity_dir
    - is_noise
    - decode
    - get_bands
    - i32::read_bool
    - is_intensity
    - Result::iter
    - iter_mut
    - Ok
    - decode_info
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn decode_ga_cpe<B: ReadBitsLtr>(&mut self,bs: &mut B,aot: AudioObjectType,)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: synth_channel
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:168,1
    - Dst: '&mut AudioBuffer<f32>::plane_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:171,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:171,1
    - Dst: synth_channel
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:175,1
    - Dst: '&mut AudioBuffer<f32>::plane_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:178,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 3
    argNames:
    - dsp
    - abuf
    - rate_idx
    argTypes:
    - '&mut dsp::Dsp'
    - '&mut AudioBuffer<f32>'
    - usize
    constantsTouched: []
    func_position:
      end: 181
      start: 162
    functionDepth: 14
    functionLinenumber: 162
    functionLinenumberEnd: 181
    functionName: ChannelPair::synth_audio
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs
    functionUses: 0
    functionsReached:
    - Option::expect
    - synth_channel
    - '&mut AudioBuffer<f32>::plane_mut'
    linkageType: ''
    returnType: void
    signature: 'pub fn synth_audio(&mut self,dsp: &mut dsp::Dsp,abuf: &mut AudioBuffer<f32>,rate_idx:
      usize,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: TnsCoeffs::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:46,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:47,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:49,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:52,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:54,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:77,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:78,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:81,1
    - Dst: sin
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:88,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:99,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:104,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 124
    argCount: 4
    argNames:
    - bs
    - long_win
    - coef_res
    - max_order
    argTypes:
    - '&mut B'
    - bool
    - bool
    - usize
    constantsTouched: []
    func_position:
      end: 105
      start: 39
    functionDepth: 16
    functionLinenumber: 39
    functionLinenumberEnd: 105
    functionName: TnsCoeffs::read
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs
    functionUses: 0
    functionsReached:
    - f32::from
    - i32::read_bits_leq32
    - validate
    - sin
    - i32::read_bool
    - iter_mut
    - copy_from_slice
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBitsLtr>(&mut self,bs: &mut B,long_win: bool,coef_res:
      bool,max_order: usize,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:116,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:119,1
    - Dst: TnsCoeffs::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:134,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:137,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:139,1
    - Dst: read
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:142,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:146,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:146,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 3
    argNames:
    - bs
    - info
    - is_lc
    argTypes:
    - '&mut B'
    - '&IcsInfo'
    - bool
    constantsTouched: []
    func_position:
      end: 147
      start: 115
    functionDepth: 16
    functionLinenumber: 115
    functionLinenumberEnd: 147
    functionName: Tns::read
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs
    functionUses: 1
    functionsReached:
    - TnsCoeffs::new
    - read
    - i32::read_bits_leq32
    - Some
    - i32::read_bool
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBitsLtr>(bs: &mut B, info: &IcsInfo, is_lc: bool)
      -> Result<Option<Self>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: min
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:156,1
    - Dst: '&''static [usize]::len'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:165,1
    - Dst: bottom::saturating_sub
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:170,1
    - Dst: min
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:178,1
    - Dst: bottom::min
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:179,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:184,1
    - Dst: min
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:185,1
    - Dst: rev
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:191,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:191,1
    - Dst: min
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs:192,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 97
    argCount: 4
    argNames:
    - info
    - bands
    - rate_idx
    - coeffs
    argTypes:
    - '&IcsInfo'
    - '&[usize]'
    - usize
    - '&mut [f32; 1024]'
    constantsTouched: []
    func_position:
      end: 199
      start: 149
    functionDepth: 3
    functionLinenumber: 149
    functionLinenumberEnd: 199
    functionName: Tns::synth
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs
    functionUses: 0
    functionsReached:
    - rev
    - min
    - '&''static [usize]::len'
    - enumerate
    - bottom::saturating_sub
    - bottom::min
    linkageType: ''
    returnType: void
    signature: 'pub fn synth(&self,info: &IcsInfo,bands: &[usize],rate_idx: usize,coeffs:
      &mut [f32; 1024],)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/ltp.rs:22,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/ltp.rs:25,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/ltp.rs:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 54
      start: 21
    functionDepth: 16
    functionLinenumber: 21
    functionLinenumberEnd: 54
    functionName: LtpData::read
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/ltp.rs
    functionUses: 1
    functionsReached:
    - Ok
    - i32::read_bool
    - symphonia_core::errors::unsupported_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBitsLtr>(bs: &mut B) -> Result<Option<Self>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/gain.rs:25,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/gain.rs:28,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/gain.rs:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 41
      start: 24
    functionDepth: 16
    functionLinenumber: 24
    functionLinenumberEnd: 41
    functionName: GainControl::read
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/gain.rs
    functionUses: 1
    functionsReached:
    - Ok
    - i32::read_bool
    - symphonia_core::errors::unsupported_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBitsLtr>(bs: &mut B) -> Result<Option<Self>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 114
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 114
    functionName: IcsInfo::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:121,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:122,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:125,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:143,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:149,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:152,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:163,1
    - Dst: ltp::LtpData::read
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:164,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:166,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 113
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 167
      start: 117
    functionDepth: 16
    functionLinenumber: 117
    functionLinenumberEnd: 167
    functionName: IcsInfo::decode
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - i32::read_bool
    - ltp::LtpData::read
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn decode<B: ReadBitsLtr>(&mut self, bs: &mut B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&IcsInfo::clone'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - other
    argTypes:
    - '&IcsInfo'
    constantsTouched: []
    func_position:
      end: 178
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 178
    functionName: IcsInfo::copy_from_common
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 0
    functionsReached:
    - '&IcsInfo::clone'
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_from_common(&mut self, other: &IcsInfo)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - g
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: IcsInfo::get_group_start
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'fn get_group_start(&self, g: usize) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: IcsInfo::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - sbinfo
    argTypes:
    - GASubbandInfo
    constantsTouched: []
    func_position:
      end: 227
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 227
    functionName: Ics::new
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - IcsInfo::new
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(sbinfo: GASubbandInfo) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: IcsInfo::new
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: Ics::reset
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 0
    functionsReached:
    - IcsInfo::new
    linkageType: ''
    returnType: void
    signature: pub fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:243,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:247,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:251,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:260,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:272,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 81
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 273
      start: 234
    functionDepth: 16
    functionLinenumber: 234
    functionLinenumberEnd: 273
    functionName: Ics::decode_section_data
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - symphonia_core::errors::decode_error
    - validate
    linkageType: ''
    returnType: Result
    signature: 'fn decode_section_data<B: ReadBitsLtr>(&mut self, bs: &mut B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - g
    - sfb
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 278
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionName: Ics::is_zero
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn is_zero(&self, g: usize, sfb: usize) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - g
    - sfb
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 283
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionName: Ics::is_intensity
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn is_intensity(&self, g: usize, sfb: usize) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - g
    - sfb
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 288
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionName: Ics::is_noise
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn is_noise(&self, g: usize, sfb: usize) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - g
    - sfb
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 293
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionName: Ics::get_intensity_dir
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn get_intensity_dir(&self, g: usize, sfb: usize) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: decode
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:296,1
    - Dst: Ics::get_bands
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:299,1
    - Dst: '&''static [usize]::len'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:299,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:300,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:302,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 303
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 303
    functionName: Ics::decode_info
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - decode
    - '&''static [usize]::len'
    - Ics::get_bands
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn decode_info<B: ReadBitsLtr>(&mut self, bs: &mut B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i16::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:308,1
    - Dst: i16::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:309,1
    - Dst: Ics::is_zero
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:318,1
    - Dst: Ics::is_intensity
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:321,1
    - Dst: i16::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:322,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:322,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:325,1
    - Dst: Ics::is_noise
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:329,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:332,1
    - Dst: i16::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:335,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:335,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:339,1
    - Dst: i16::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:344,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:344,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:347,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:353,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 76
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 354
      start: 305
    functionDepth: 15
    functionLinenumber: 305
    functionLinenumberEnd: 354
    functionName: Ics::decode_scale_factor_data
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - Ics::is_zero
    - i32::read_codebook
    - Ics::is_intensity
    - i32::read_bits_leq32
    - i16::from
    - validate
    - Ok
    - Ics::is_noise
    linkageType: ''
    returnType: Result
    signature: 'fn decode_scale_factor_data<B: ReadBitsLtr>(&mut self, bs: &mut B)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 358
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 358
    functionName: Ics::get_bands
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: '&''static [usize]'
    signature: pub fn get_bands(&self) -> &'static [usize]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:362,1
    - Dst: Ics::get_bands
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:364,1
    - Dst: get_group_start
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:367,1
    - Dst: get_group_start
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:368,1
    - Dst: decode_noise
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:383,1
    - Dst: decode_quads_signed
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:386,1
    - Dst: decode_quads_signed
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:387,1
    - Dst: decode_quads_unsigned
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:388,1
    - Dst: decode_quads_unsigned
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:389,1
    - Dst: decode_pairs_signed
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:390,1
    - Dst: decode_pairs_signed
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:391,1
    - Dst: decode_pairs_unsigned
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:392,1
    - Dst: decode_pairs_unsigned
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:393,1
    - Dst: decode_pairs_unsigned
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:394,1
    - Dst: decode_pairs_unsigned
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:395,1
    - Dst: decode_pairs_unsigned_escape
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:396,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:402,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 95
    argCount: 2
    argNames:
    - bs
    - lcg
    argTypes:
    - '&mut B'
    - '&mut Lcg'
    constantsTouched: []
    func_position:
      end: 403
      start: 360
    functionDepth: 16
    functionLinenumber: 360
    functionLinenumberEnd: 403
    functionName: Ics::decode_spectrum
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - decode_pairs_unsigned
    - Ok
    - decode_quads_signed
    - fill
    - decode_pairs_unsigned_escape
    - decode_noise
    - Ics::get_bands
    - get_group_start
    - decode_pairs_signed
    - decode_quads_unsigned
    linkageType: ''
    returnType: Result
    signature: 'fn decode_spectrum<B: ReadBitsLtr>(&mut self, bs: &mut B, lcg: &mut
      Lcg) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:412,1
    - Dst: Ics::decode_info
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:417,1
    - Dst: Ics::decode_section_data
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:420,1
    - Dst: Ics::decode_scale_factor_data
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:422,1
    - Dst: pulse::Pulse::read
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:424,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:426,1
    - Dst: tns::Tns::read
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:430,1
    - Dst: gain::GainControl::read
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:433,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:435,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:436,1
    - Dst: Ics::decode_spectrum
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:440,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:441,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 52
    argCount: 4
    argNames:
    - bs
    - lcg
    - aot
    - common_window
    argTypes:
    - '&mut B'
    - '&mut Lcg'
    - AudioObjectType
    - bool
    constantsTouched: []
    func_position:
      end: 442
      start: 405
    functionDepth: 16
    functionLinenumber: 405
    functionLinenumberEnd: 442
    functionName: Ics::decode
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 0
    functionsReached:
    - Ics::decode_section_data
    - i32::read_bits_leq32
    - Ics::decode_info
    - validate
    - gain::GainControl::read
    - Ics::decode_scale_factor_data
    - tns::Tns::read
    - i32::read_bool
    - Ics::decode_spectrum
    - Ok
    - pulse::Pulse::read
    linkageType: ''
    returnType: Result
    signature: 'pub fn decode<B: ReadBitsLtr>(&mut self,bs: &mut B,lcg: &mut Lcg,aot:
      AudioObjectType,common_window: bool,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ics::get_bands
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:445,1
    - Dst: synth
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:448,1
    - Dst: synth
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:452,1
    - Dst: '&mut dsp::Dsp::synth'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:455,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 37
    argCount: 3
    argNames:
    - dsp
    - rate_idx
    - dst
    argTypes:
    - '&mut dsp::Dsp'
    - usize
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 463
      start: 444
    functionDepth: 13
    functionLinenumber: 444
    functionLinenumberEnd: 463
    functionName: Ics::synth_channel
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 0
    functionsReached:
    - synth
    - '&mut dsp::Dsp::synth'
    - Ics::get_bands
    linkageType: ''
    returnType: void
    signature: 'pub fn synth_channel(&mut self, dsp: &mut dsp::Dsp, rate_idx: usize,
      dst: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::iter_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:470,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:473,1
    - Dst: '&mut Lcg::next'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:473,1
    - Dst: sqrt
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:477,1
    - Dst: '&mut [f32]::iter_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:479,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 3
    argNames:
    - lcg
    - sf
    - dst
    argTypes:
    - '&mut Lcg'
    - f32
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 482
      start: 467
    functionDepth: 15
    functionLinenumber: 467
    functionLinenumberEnd: 482
    functionName: decode_noise
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - sqrt
    - '&mut [f32]::iter_mut'
    - f32::from
    - '&mut Lcg::next'
    linkageType: ''
    returnType: void
    signature: 'fn decode_noise(lcg: &mut Lcg, sf: f32, dst: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionName: decode_sign
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: f32
    signature: 'fn decode_sign(val: u32) -> f32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:498,1
    - Dst: '&codebooks::QuadsCodebook::read_quant'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:499,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:502,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:502,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:505,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:505,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:508,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:508,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:511,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:511,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:515,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 63
    argCount: 4
    argNames:
    - bs
    - cb
    - scale
    - dst
    argTypes:
    - '&mut B'
    - '&codebooks::QuadsCodebook'
    - f32
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 516
      start: 489
    functionDepth: 16
    functionLinenumber: 489
    functionLinenumberEnd: 516
    functionName: decode_quads_unsigned
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - decode_sign
    - Ok
    - i32::read_bit
    - '&mut [f32]::chunks_exact_mut'
    - '&codebooks::QuadsCodebook::read_quant'
    linkageType: ''
    returnType: Result
    signature: 'fn decode_quads_unsigned<B: ReadBitsLtr>(bs: &mut B,cb: &codebooks::QuadsCodebook,scale:
      f32,dst: &mut [f32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:527,1
    - Dst: '&codebooks::QuadsCodebook::read_quant'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:528,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:535,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 31
    argCount: 4
    argNames:
    - bs
    - cb
    - scale
    - dst
    argTypes:
    - '&mut B'
    - '&codebooks::QuadsCodebook'
    - f32
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 536
      start: 518
    functionDepth: 16
    functionLinenumber: 518
    functionLinenumberEnd: 536
    functionName: decode_quads_signed
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - Ok
    - '&codebooks::QuadsCodebook::read_quant'
    - '&mut [f32]::chunks_exact_mut'
    linkageType: ''
    returnType: Result
    signature: 'fn decode_quads_signed<B: ReadBitsLtr>(bs: &mut B,cb: &codebooks::QuadsCodebook,scale:
      f32,dst: &mut [f32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:544,1
    - Dst: '&codebooks::PairsCodebook::read_dequant'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:545,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:550,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - bs
    - cb
    - scale
    - dst
    argTypes:
    - '&mut B'
    - '&codebooks::PairsCodebook'
    - f32
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 551
      start: 538
    functionDepth: 16
    functionLinenumber: 538
    functionLinenumberEnd: 551
    functionName: decode_pairs_signed
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - Ok
    - '&codebooks::PairsCodebook::read_dequant'
    - '&mut [f32]::chunks_exact_mut'
    linkageType: ''
    returnType: Result
    signature: 'fn decode_pairs_signed<B: ReadBitsLtr>(bs: &mut B,cb: &codebooks::PairsCodebook,scale:
      f32,dst: &mut [f32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:559,1
    - Dst: '&codebooks::PairsCodebook::read_dequant'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:560,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:562,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:562,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:563,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:563,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:569,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 4
    argNames:
    - bs
    - cb
    - scale
    - dst
    argTypes:
    - '&mut B'
    - '&codebooks::PairsCodebook'
    - f32
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 570
      start: 553
    functionDepth: 16
    functionLinenumber: 553
    functionLinenumberEnd: 570
    functionName: decode_pairs_unsigned
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - decode_sign
    - '&codebooks::PairsCodebook::read_dequant'
    - Ok
    - i32::read_bit
    - '&mut [f32]::chunks_exact_mut'
    linkageType: ''
    returnType: Result
    signature: 'fn decode_pairs_unsigned<B: ReadBitsLtr>(bs: &mut B,cb: &codebooks::PairsCodebook,scale:
      f32,dst: &mut [f32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:580,1
    - Dst: '&codebooks::EscapeCodebook::read_quant'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:581,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:584,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:584,1
    - Dst: decode_sign
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:585,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:585,1
    - Dst: read_escape
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:587,1
    - Dst: read_escape
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:588,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:593,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 4
    argNames:
    - bs
    - cb
    - scale
    - dst
    argTypes:
    - '&mut B'
    - '&codebooks::EscapeCodebook'
    - f32
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 594
      start: 572
    functionDepth: 16
    functionLinenumber: 572
    functionLinenumberEnd: 594
    functionName: decode_pairs_unsigned_escape
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - '&codebooks::EscapeCodebook::read_quant'
    - decode_sign
    - read_escape
    - Ok
    - i32::read_bit
    - '&mut [f32]::chunks_exact_mut'
    linkageType: ''
    returnType: Result
    signature: 'fn decode_pairs_unsigned_escape<B: ReadBitsLtr>(bs: &mut B,cb: &codebooks::EscapeCodebook,scale:
      f32,dst: &mut [f32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_unary_ones
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:597,1
    - Dst: validate
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:599,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:602,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs:604,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 605
      start: 596
    functionDepth: 16
    functionLinenumber: 596
    functionLinenumberEnd: 605
    functionName: read_escape
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - i32::read_unary_ones
    - validate
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read_escape<B: ReadBitsLtr>(bs: &mut B) -> Result<u16>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f32::powf
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:30,1
    - Dst: powf
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:30,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - val
    - scale
    argTypes:
    - f32
    - f32
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: requant
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs
    functionUses: 1
    functionsReached:
    - f32::powf
    - powf
    linkageType: ''
    returnType: f32
    signature: 'fn requant(val: f32, scale: f32) -> f32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:44,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:47,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:50,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:51,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:57,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:58,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:61,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:61,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 62
      start: 43
    functionDepth: 16
    functionLinenumber: 43
    functionLinenumberEnd: 62
    functionName: Pulse::read
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - i32::read_bool
    - Some
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBitsLtr>(bs: &mut B) -> Result<Option<Self>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [usize]::len'
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:70,1
    - Dst: requant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:94,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:98,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:101,1
    - Dst: iquant
      Src: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs:103,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 57
    argCount: 3
    argNames:
    - bands
    - scales
    - coeffs
    argTypes:
    - '&[usize]'
    - '&[[f32; MAX_SFBS]; MAX_WINDOWS]'
    - '&mut [f32; 1024]'
    constantsTouched: []
    func_position:
      end: 105
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 105
    functionName: Pulse::synth
    functionSourceFile: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs
    functionUses: 0
    functionsReached:
    - iquant
    - requant
    - f32::from
    - '&''static [usize]::len'
    linkageType: ''
    returnType: void
    signature: 'pub fn synth(&self,bands: &[usize],scales: &[[f32; MAX_SFBS]; MAX_WINDOWS],coeffs:
      &mut [f32; 1024],)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Command::new
      Src: /src/symphonia/symphonia-check/src/main.rs:70,1
    - Dst: Self::arg
      Src: /src/symphonia/symphonia-check/src/main.rs:74,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:74,1
    - Dst: Self::arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: stdout
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: Stdio::piped
      Src: /src/symphonia/symphonia-check/src/main.rs:88,1
    - Dst: stderr
      Src: /src/symphonia/symphonia-check/src/main.rs:77,1
    - Dst: Stdio::null
      Src: /src/symphonia/symphonia-check/src/main.rs:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 38
    argCount: 2
    argNames:
    - path
    - gapless
    argTypes:
    - '&Path'
    - bool
    constantsTouched: []
    func_position:
      end: 92
      start: 69
    functionDepth: 10
    functionLinenumber: 69
    functionLinenumberEnd: 92
    functionName: build_ffmpeg_command
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - Stdio::piped
    - arg
    - Command::new
    - Self::arg
    - Stdio::null
    - stderr
    - stdout
    linkageType: ''
    returnType: Command
    signature: 'fn build_ffmpeg_command(path: &Path, gapless: bool) -> Command'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Command::new
      Src: /src/symphonia/symphonia-check/src/main.rs:95,1
    - Dst: Self::arg
      Src: /src/symphonia/symphonia-check/src/main.rs:97,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:97,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:97,1
    - Dst: stdout
      Src: /src/symphonia/symphonia-check/src/main.rs:97,1
    - Dst: Stdio::piped
      Src: /src/symphonia/symphonia-check/src/main.rs:97,1
    - Dst: stderr
      Src: /src/symphonia/symphonia-check/src/main.rs:97,1
    - Dst: Stdio::null
      Src: /src/symphonia/symphonia-check/src/main.rs:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - path
    argTypes:
    - '&Path'
    constantsTouched: []
    func_position:
      end: 100
      start: 94
    functionDepth: 10
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionName: build_flac_command
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - Stdio::piped
    - arg
    - Command::new
    - Self::arg
    - Stdio::null
    - stderr
    - stdout
    linkageType: ''
    returnType: Command
    signature: 'fn build_flac_command(path: &Path) -> Command'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Command::new
      Src: /src/symphonia/symphonia-check/src/main.rs:103,1
    - Dst: Self::arg
      Src: /src/symphonia/symphonia-check/src/main.rs:106,1
    - Dst: Self::arg
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    - Dst: stdout
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    - Dst: Stdio::piped
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    - Dst: stderr
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    - Dst: Stdio::null
      Src: /src/symphonia/symphonia-check/src/main.rs:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 2
    argNames:
    - path
    - gapless
    argTypes:
    - '&Path'
    - bool
    constantsTouched: []
    func_position:
      end: 112
      start: 102
    functionDepth: 10
    functionLinenumber: 102
    functionLinenumberEnd: 112
    functionName: build_mpg123_command
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - Stdio::piped
    - arg
    - Command::new
    - Self::arg
    - Stdio::null
    - stderr
    - stdout
    linkageType: ''
    returnType: Command
    signature: 'fn build_mpg123_command(path: &Path, gapless: bool) -> Command'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Command::new
      Src: /src/symphonia/symphonia-check/src/main.rs:115,1
    - Dst: Self::arg
      Src: /src/symphonia/symphonia-check/src/main.rs:116,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:116,1
    - Dst: arg
      Src: /src/symphonia/symphonia-check/src/main.rs:116,1
    - Dst: stdout
      Src: /src/symphonia/symphonia-check/src/main.rs:116,1
    - Dst: Stdio::piped
      Src: /src/symphonia/symphonia-check/src/main.rs:116,1
    - Dst: stderr
      Src: /src/symphonia/symphonia-check/src/main.rs:116,1
    - Dst: Stdio::null
      Src: /src/symphonia/symphonia-check/src/main.rs:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - path
    argTypes:
    - '&Path'
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 10
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: build_oggdec_command
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - Stdio::piped
    - arg
    - Command::new
    - Self::arg
    - Stdio::null
    - stderr
    - stdout
    linkageType: ''
    returnType: Command
    signature: 'fn build_oggdec_command(path: &Path) -> Command'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: build_ffmpeg_command
      Src: /src/symphonia/symphonia-check/src/main.rs:127,1
    - Dst: build_flac_command
      Src: /src/symphonia/symphonia-check/src/main.rs:128,1
    - Dst: build_mpg123_command
      Src: /src/symphonia/symphonia-check/src/main.rs:129,1
    - Dst: build_oggdec_command
      Src: /src/symphonia/symphonia-check/src/main.rs:130,1
    - Dst: spawn
      Src: /src/symphonia/symphonia-check/src/main.rs:133,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-check/src/main.rs:134,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - decoder
    - gapless
    - path
    argTypes:
    - RefDecoder
    - bool
    - '&Path'
    constantsTouched: []
    func_position:
      end: 135
      start: 125
    functionDepth: 11
    functionLinenumber: 125
    functionLinenumberEnd: 135
    functionName: RefProcess::try_spawn
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - build_flac_command
    - build_ffmpeg_command
    - spawn
    - build_oggdec_command
    - Ok
    - build_mpg123_command
    linkageType: ''
    returnType: Result
    signature: 'fn try_spawn(decoder: RefDecoder, gapless: bool, path: &Path) -> Result<RefProcess>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:157,1
    - Dst: Hint::new
      Src: /src/symphonia/symphonia-check/src/main.rs:159,1
    - Dst: symphonia::default::get_probe
      Src: /src/symphonia/symphonia-check/src/main.rs:161,1
    - Dst: '&''static Probe::probe'
      Src: /src/symphonia/symphonia-check/src/main.rs:161,1
    - Dst: bool::default_track
      Src: /src/symphonia/symphonia-check/src/main.rs:163,1
    - Dst: symphonia::core::errors::unsupported_error
      Src: /src/symphonia/symphonia-check/src/main.rs:165,1
    - Dst: symphonia::core::errors::unsupported_error
      Src: /src/symphonia/symphonia-check/src/main.rs:170,1
    - Dst: symphonia::default::get_codecs
      Src: /src/symphonia/symphonia-check/src/main.rs:174,1
    - Dst: '&''static CodecRegistry::make_audio_decoder'
      Src: /src/symphonia/symphonia-check/src/main.rs:174,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-check/src/main.rs:178,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - mss
    - fmt_opts
    - dec_opts
    argTypes:
    - MediaSourceStream<'static>
    - FormatOptions
    - AudioDecoderOptions
    constantsTouched: []
    func_position:
      end: 179
      start: 151
    functionDepth: 15
    functionLinenumber: 151
    functionLinenumberEnd: 179
    functionName: DecoderInstance::try_open
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - '&''static CodecRegistry::make_audio_decoder'
    - '&''static Probe::probe'
    - symphonia::default::get_probe
    - Hint::new
    - symphonia::default::get_codecs
    - bool::default_track
    - symphonia::core::errors::unsupported_error
    - Ok
    - Default::default
    linkageType: ''
    returnType: Result
    signature: 'fn try_open(mss: MediaSourceStream<''static>,fmt_opts: FormatOptions,dec_opts:
      AudioDecoderOptions,) -> Result<DecoderInstance>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: codec_params
      Src: /src/symphonia/symphonia-check/src/main.rs:182,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-check/src/main.rs:182,1
    - Dst: map
      Src: /src/symphonia/symphonia-check/src/main.rs:182,1
    - Dst: io::Result::count
      Src: /src/symphonia/symphonia-check/src/main.rs:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 183
      start: 181
    functionDepth: 19
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionName: DecoderInstance::samples_per_frame
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - io::Result::count
    - as_ref
    - codec_params
    - map
    linkageType: ''
    returnType: Option
    signature: fn samples_per_frame(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: next_packet
      Src: /src/symphonia/symphonia-check/src/main.rs:188,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-check/src/main.rs:190,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-check/src/main.rs:191,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-check/src/main.rs:195,1
    - Dst: Err
      Src: /src/symphonia/symphonia-check/src/main.rs:197,1
    - Dst: decode
      Src: /src/symphonia/symphonia-check/src/main.rs:206,1
    - Dst: Err
      Src: /src/symphonia/symphonia-check/src/main.rs:209,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-check/src/main.rs:213,1
    - Dst: Some
      Src: /src/symphonia/symphonia-check/src/main.rs:213,1
    - Dst: last_decoded
      Src: /src/symphonia/symphonia-check/src/main.rs:213,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 1
    argNames:
    - keep_going
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 214
      start: 185
    functionDepth: 16
    functionLinenumber: 185
    functionLinenumberEnd: 214
    functionName: DecoderInstance::next_audio_buf
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 2
    functionsReached:
    - Some
    - last_decoded
    - decode
    - next_packet
    - Err
    - Ok
    - Result::kind
    linkageType: ''
    returnType: Result
    signature: 'fn next_audio_buf(&mut self, keep_going: bool) -> Result<Option<GenericAudioBufferRef<''_>>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:217,1
    - Dst: DecoderInstance::next_audio_buf
      Src: /src/symphonia/symphonia-check/src/main.rs:219,1
    - Dst: Result::samples_interleaved
      Src: /src/symphonia/symphonia-check/src/main.rs:221,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-check/src/main.rs:224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - keep_going
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 225
      start: 216
    functionDepth: 15
    functionLinenumber: 216
    functionLinenumberEnd: 225
    functionName: DecoderInstance::flush
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - DecoderInstance::next_audio_buf
    - Default::default
    - Ok
    - Result::samples_interleaved
    linkageType: ''
    returnType: Result
    signature: 'fn flush(&mut self, keep_going: bool) -> Result<FlushStats>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:235,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:240,1
    - Dst: '&mut DecoderInstance::samples_per_frame'
      Src: /src/symphonia/symphonia-check/src/main.rs:244,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-check/src/main.rs:244,1
    - Dst: '&mut DecoderInstance::samples_per_frame'
      Src: /src/symphonia/symphonia-check/src/main.rs:247,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-check/src/main.rs:247,1
    - Dst: symphonia::core::errors::unsupported_error
      Src: /src/symphonia/symphonia-check/src/main.rs:248,1
    - Dst: '&mut DecoderInstance::next_audio_buf'
      Src: /src/symphonia/symphonia-check/src/main.rs:253,1
    - Dst: Result::copy_to_vec_interleaved
      Src: /src/symphonia/symphonia-check/src/main.rs:254,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-check/src/main.rs:258,1
    - Dst: '&mut DecoderInstance::next_audio_buf'
      Src: /src/symphonia/symphonia-check/src/main.rs:271,1
    - Dst: Result::copy_to_vec_interleaved
      Src: /src/symphonia/symphonia-check/src/main.rs:272,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-check/src/main.rs:276,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-check/src/main.rs:286,1
    - Dst: len
      Src: /src/symphonia/symphonia-check/src/main.rs:286,1
    - Dst: len
      Src: /src/symphonia/symphonia-check/src/main.rs:286,1
    - Dst: iter
      Src: /src/symphonia/symphonia-check/src/main.rs:289,1
    - Dst: zip
      Src: /src/symphonia/symphonia-check/src/main.rs:289,1
    - Dst: Result::clamp
      Src: /src/symphonia/symphonia-check/src/main.rs:293,1
    - Dst: MediaSourceStream::clamp
      Src: /src/symphonia/symphonia-check/src/main.rs:293,1
    - Dst: Option::abs
      Src: /src/symphonia/symphonia-check/src/main.rs:295,1
    - Dst: max
      Src: /src/symphonia/symphonia-check/src/main.rs:313,1
    - Dst: Option::abs
      Src: /src/symphonia/symphonia-check/src/main.rs:313,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-check/src/main.rs:327,1
    - Dst: '&mut DecoderInstance::flush'
      Src: /src/symphonia/symphonia-check/src/main.rs:338,1
    - Dst: '&mut DecoderInstance::flush'
      Src: /src/symphonia/symphonia-check/src/main.rs:339,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-check/src/main.rs:346,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 165
    argCount: 4
    argNames:
    - ref_inst
    - tgt_inst
    - opts
    - acct
    argTypes:
    - '&mut DecoderInstance'
    - '&mut DecoderInstance'
    - '&TestOptions'
    - '&mut TestResult'
    constantsTouched: []
    func_position:
      end: 347
      start: 228
    functionDepth: 15
    functionLinenumber: 228
    functionLinenumberEnd: 347
    functionName: run_check
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 1
    functionsReached:
    - len
    - '&mut DecoderInstance::flush'
    - u64::from
    - Option::unwrap_or
    - Option::abs
    - zip
    - Result::clamp
    - MediaSourceStream::clamp
    - iter
    - max
    - Result::len
    - std::cmp::min
    - symphonia::core::errors::unsupported_error
    - Result::copy_to_vec_interleaved
    - Ok
    - Default::default
    - '&mut DecoderInstance::samples_per_frame'
    - '&mut DecoderInstance::next_audio_buf'
    linkageType: ''
    returnType: Result
    signature: 'fn run_check(ref_inst: &mut DecoderInstance,tgt_inst: &mut DecoderInstance,opts:
      &TestOptions,acct: &mut TestResult,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: RefProcess::try_spawn
      Src: /src/symphonia/symphonia-check/src/main.rs:351,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-check/src/main.rs:354,1
    - Dst: ReadOnlySource::new
      Src: /src/symphonia/symphonia-check/src/main.rs:354,1
    - Dst: take
      Src: /src/symphonia/symphonia-check/src/main.rs:354,1
    - Dst: symphonia::core::errors::unsupported_error
      Src: /src/symphonia/symphonia-check/src/main.rs:356,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-check/src/main.rs:358,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:358,1
    - Dst: DecoderInstance::try_open
      Src: /src/symphonia/symphonia-check/src/main.rs:360,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:360,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:360,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-check/src/main.rs:363,1
    - Dst: File::open
      Src: /src/symphonia/symphonia-check/src/main.rs:363,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-check/src/main.rs:364,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:364,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-check/src/main.rs:366,1
    - Dst: AudioDecoderOptions::default
      Src: /src/symphonia/symphonia-check/src/main.rs:367,1
    - Dst: Self::gapless
      Src: /src/symphonia/symphonia-check/src/main.rs:367,1
    - Dst: DecoderInstance::try_open
      Src: /src/symphonia/symphonia-check/src/main.rs:369,1
    - Dst: run_check
      Src: /src/symphonia/symphonia-check/src/main.rs:372,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - path
    - opts
    - result
    argTypes:
    - '&Path'
    - '&TestOptions'
    - '&mut TestResult'
    constantsTouched: []
    func_position:
      end: 373
      start: 349
    functionDepth: 12
    functionLinenumber: 349
    functionLinenumberEnd: 373
    functionName: run_test
    functionSourceFile: /src/symphonia/symphonia-check/src/main.rs
    functionUses: 0
    functionsReached:
    - File::open
    - RefProcess::try_spawn
    - run_check
    - DecoderInstance::try_open
    - MediaSourceStream::new
    - take
    - ReadOnlySource::new
    - Box::new
    - symphonia::core::errors::unsupported_error
    - Default::default
    - AudioDecoderOptions::default
    - Self::gapless
    linkageType: ''
    returnType: Result
    signature: 'fn run_test(path: &Path, opts: &TestOptions, result: &mut TestResult)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 1
    argNames:
    - header
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 69
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 69
    functionName: check_header
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/header.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn check_header(header: u32) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sync
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: is_frame_header_word_synced
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/header.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn is_frame_header_word_synced(sync: u32) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::wrapping_shl
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:71,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:71,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:71,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 75
      start: 64
    functionDepth: 14
    functionLinenumber: 64
    functionLinenumberEnd: 75
    functionName: sync_frame
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/frame.rs
    functionUses: 4
    functionsReached:
    - Result::read_u8
    - Ok
    - u16::from
    - Result::wrapping_shl
    linkageType: ''
    returnType: Result
    signature: 'pub fn sync_frame<B: ReadBytes>(reader: &mut B) -> Result<u16>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:115,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:122,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:128,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:130,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:150,1
    - Dst: ChannelMode::JointStereo
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:162,1
    - Dst: ChannelMode::JointStereo
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:169,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:180,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:184,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:216,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:221,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 120
    argCount: 1
    argNames:
    - header
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 235
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 235
    functionName: parse_frame_header
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/header.rs
    functionUses: 4
    functionsReached:
    - usize::from
    - symphonia_core::errors::unsupported_error
    - ChannelMode::JointStereo
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn parse_frame_header(header: u32) -> Result<FrameHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Crc8Ccitt::new
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:79,1
    - Dst: Self::process_buf_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:80,1
    - Dst: Result::to_be_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:80,1
    - Dst: MonitorStream::new
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:82,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:92,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:94,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:95,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:96,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:97,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:100,1
    - Dst: utf8_decode_be_u64
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:106,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:108,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:115,1
    - Dst: BlockSequence::ByFrame
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:118,1
    - Dst: utf8_decode_be_u64
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:122,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:124,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:131,1
    - Dst: BlockSequence::BySample
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:134,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:141,1
    - Dst: MonitorStream::read_u8
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:141,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:143,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:145,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:151,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:157,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:158,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:159,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:160,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:161,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:162,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:163,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:164,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:165,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:166,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:167,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:168,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:168,1
    - Dst: MonitorStream::read_u8
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:168,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:169,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:169,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:169,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:170,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:170,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:170,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:172,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:178,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:184,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:185,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:186,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:187,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:188,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:189,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:191,1
    - Dst: ChannelAssignment::Independant
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:196,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:201,1
    - Dst: MonitorStream::monitor
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:206,1
    - Dst: '&M::crc'
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:206,1
    - Dst: MonitorStream::into_inner
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:209,1
    - Dst: B::read_u8
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:209,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:212,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:215,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 170
    argCount: 2
    argNames:
    - reader
    - sync
    argTypes:
    - '&mut B'
    - u16
    constantsTouched: []
    func_position:
      end: 222
      start: 77
    functionDepth: 14
    functionLinenumber: 77
    functionLinenumberEnd: 222
    functionName: read_frame_header
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/frame.rs
    functionUses: 5
    functionsReached:
    - B::read_u8
    - BlockSequence::BySample
    - Crc8Ccitt::new
    - MonitorStream::read_u8
    - BlockSequence::ByFrame
    - Ok
    - symphonia_core::errors::decode_error
    - Self::process_buf_bytes
    - MonitorStream::monitor
    - Result::to_be_bytes
    - '&M::crc'
    - u32::from
    - MonitorStream::into_inner
    - ChannelAssignment::Independant
    - Some
    - MonitorStream::new
    - utf8_decode_be_u64
    - u16::from
    - MonitorStream::read_be_u16
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_frame_header<B: ReadBytes>(reader: &mut B, sync: u16)
      -> Result<FrameHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:250,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/header.rs:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 14
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: read_frame_header_word_no_sync
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/header.rs
    functionUses: 2
    functionsReached:
    - Ok
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_frame_header_word_no_sync<B: ReadBytes>(reader: &mut B)
      -> Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: SynthesisState::default
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: dct32
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:245,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:247,1
    - Dst: rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:247,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:247,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:250,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:250,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:253,1
    - Dst: rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:253,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:253,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:256,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:256,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:327,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 167
    argCount: 4
    argNames:
    - state
    - n_frames
    - in_samples
    - out
    argTypes:
    - '&mut SynthesisState'
    - usize
    - '&[f32]'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 336
      start: 158
    functionDepth: 3
    functionLinenumber: 158
    functionLinenumberEnd: 336
    functionName: synthesis
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs
    functionUses: 4
    functionsReached:
    - rev
    - zip
    - iter_mut
    - copy_from_slice
    - dct32
    linkageType: ''
    returnType: void
    signature: 'pub fn synthesis(state: &mut SynthesisState, n_frames: usize, in_samples:
      &[f32], out: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 1573
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[f32; 32]'
    - '&mut [f32; 32]'
    constantsTouched: []
    func_position:
      end: 844
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 844
    functionName: dct32
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn dct32(x: &[f32; 32], y: &mut [f32; 32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:855,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:855,1
    - Dst: Option::iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:856,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:856,1
    - Dst: map
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:856,1
    - Dst: cos
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:859,1
    - Dst: sum
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&[f32; 32]'
    constantsTouched: []
    func_position:
      end: 864
      start: 851
    functionDepth: 11
    functionLinenumber: 851
    functionLinenumberEnd: 864
    functionName: tests::dct32_analytical
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs
    functionUses: 0
    functionsReached:
    - map
    - cos
    - iter_mut
    - Option::iter
    - sum
    - enumerate
    linkageType: ''
    returnType: '[f32; 32]'
    signature: 'fn dct32_analytical(x: &[f32; 32]) -> [f32; 32]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: dct32
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:876,1
    - Dst: dct32_analytical
      Src: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs:878,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 882
      start: 867
    functionDepth: 12
    functionLinenumber: 867
    functionLinenumberEnd: 882
    functionName: tests::verify_dct32
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs
    functionUses: 0
    functionsReached:
    - dct32_analytical
    - dct32
    linkageType: ''
    returnType: void
    signature: fn verify_dct32()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: ChannelMode::count
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn count(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Channels::Positioned
      Src: /src/symphonia/symphonia-bundle-mp3/src/common.rs:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: ChannelMode::channels
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached:
    - Channels::Positioned
    linkageType: ''
    returnType: Channels
    signature: pub fn channels(&self) -> Channels
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: FrameHeader::is_mpeg1
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_mpeg1(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: FrameHeader::is_mpeg2p5
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_mpeg2p5(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 137
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 137
    functionName: FrameHeader::codec
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AudioCodecId
    signature: pub fn codec(&self) -> AudioCodecId
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FrameHeader::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/common.rs:142,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/common.rs:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 149
      start: 141
    functionDepth: 11
    functionLinenumber: 141
    functionLinenumberEnd: 149
    functionName: FrameHeader::spec
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached:
    - FrameHeader::n_channels
    - AudioSpec::new
    linkageType: ''
    returnType: AudioSpec
    signature: pub fn spec(&self) -> AudioSpec
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FrameHeader::n_granules
      Src: /src/symphonia/symphonia-bundle-mp3/src/common.rs:156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 158
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 158
    functionName: FrameHeader::num_frames
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 1
    functionsReached:
    - FrameHeader::n_granules
    linkageType: ''
    returnType: u16
    signature: pub fn num_frames(&self) -> u16
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/common.rs:165,1
    - Dst: FrameHeader::num_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/common.rs:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: FrameHeader::duration
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached:
    - FrameHeader::num_frames
    - Duration::from
    linkageType: ''
    returnType: Duration
    signature: pub fn duration(&self) -> Duration
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: FrameHeader::n_granules
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn n_granules(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-bundle-mp3/src/common.rs:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 10
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: FrameHeader::n_channels
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 1
    functionsReached:
    - count
    linkageType: ''
    returnType: usize
    signature: pub fn n_channels(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 192
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionName: FrameHeader::is_intensity_stereo
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_intensity_stereo(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 203
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 203
    functionName: FrameHeader::side_info_len
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn side_info_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: State::Layer1
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:48,1
    - Dst: layer1::Layer1::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:48,1
    - Dst: State::Layer2
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:50,1
    - Dst: layer2::Layer2::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:50,1
    - Dst: State::Layer3
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:52,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:52,1
    - Dst: layer3::Layer3::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - codec
    argTypes:
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 55
      start: 45
    functionDepth: 16
    functionLinenumber: 45
    functionLinenumberEnd: 55
    functionName: State::new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 2
    functionsReached:
    - layer2::Layer2::new
    - State::Layer1
    - Box::new
    - State::Layer3
    - layer1::Layer1::new
    - State::Layer2
    - layer3::Layer3::new
    linkageType: ''
    returnType: Self
    signature: 'fn new(codec: AudioCodecId) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:76,1
    - Dst: State::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:80,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:82,1
    - Dst: clone
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:82,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 83
      start: 67
    functionDepth: 17
    functionLinenumber: 67
    functionLinenumberEnd: 83
    functionName: MpaDecoder::try_new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::unsupported_error
    - State::new
    - Ok
    - Default::default
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(params: &AudioCodecParameters, opts: &AudioDecoderOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::as_buf_reader
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:86,1
    - Dst: header::read_frame_header
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:88,1
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:91,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:92,1
    - Dst: is_unused
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:96,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:97,1
    - Dst: Result::spec
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:97,1
    - Dst: spec
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:104,1
    - Dst: Result::spec
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:104,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:105,1
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:110,1
    - Dst: decode
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:116,1
    - Dst: decode
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:120,1
    - Dst: decode
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:124,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:126,1
    - Dst: trim
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:131,1
    - Dst: get
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:131,1
    - Dst: get
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:131,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:134,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 96
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 135
      start: 85
    functionDepth: 15
    functionLinenumber: 85
    functionLinenumberEnd: 135
    functionName: MpaDecoder::decode_inner
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 1
    functionsReached:
    - trim
    - spec
    - Ok
    - get
    - Result::spec
    - Result::as_buf_reader
    - is_unused
    - decode
    - AudioBuffer::new
    - header::read_frame_header
    - symphonia_core::errors::decode_error
    - Result::bytes_available
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_inner(&mut self, packet: &PacketRef<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::supported_codecs
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:141,1
    - Dst: '&''static [SupportedAudioCodec]::iter'
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:141,1
    - Dst: find
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:141,1
    - Dst: GASubbandInfo::expect
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 11
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: MpaDecoder::codec_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached:
    - '&''static [SupportedAudioCodec]::iter'
    - find
    - Self::supported_codecs
    - GASubbandInfo::expect
    linkageType: ''
    returnType: '&CodecInfo'
    signature: fn codec_info(&self) -> &CodecInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: MpaDecoder::codec_params
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioCodecParameters'
    signature: fn codec_params(&self) -> &AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: State::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 17
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: MpaDecoder::reset
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached:
    - State::new
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MpaDecoder::decode_inner
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:158,1
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:159,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:160,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:163,1
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 165
      start: 157
    functionDepth: 16
    functionLinenumber: 157
    functionLinenumberEnd: 165
    functionName: MpaDecoder::decode_ref
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached:
    - Ok
    - as_generic_audio_buffer_ref
    - MpaDecoder::decode_inner
    - Err
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ref(&mut self, packet: &PacketRef<''_>) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 15
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: MpaDecoder::finalize
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: FinalizeResult
    signature: fn finalize(&mut self) -> FinalizeResult
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.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: MpaDecoder::last_decoded
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn last_decoded(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:184,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:184,1
    - Dst: MpaDecoder::try_new
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 185
      start: 177
    functionDepth: 10
    functionLinenumber: 177
    functionLinenumberEnd: 185
    functionName: MpaDecoder::try_registry_new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - MpaDecoder::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_registry_new(params: &AudioCodecParameters,opts: &AudioDecoderOptions,)
      -> Result<Box<dyn AudioDecoder>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:190,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:192,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 196
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 196
    functionName: MpaDecoder::supported_codecs
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_audio_codec
    linkageType: ''
    returnType: '&''static [SupportedAudioCodec]'
    signature: fn supported_codecs() -> &'static [SupportedAudioCodec]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: header::read_frame_header_word_no_sync
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:53,1
    - Dst: header::parse_frame_header
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:54,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::bytes_available
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:60,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:61,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:61,1
    - Dst: ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:65,1
    - Dst: header::read_frame_header_word_no_sync
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:68,1
    - Dst: header::is_frame_header_word_synced
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:71,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:72,1
    - Dst: header::parse_frame_header
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:76,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:78,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:78,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 1
    argNames:
    - src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 79
      start: 51
    functionDepth: 15
    functionLinenumber: 51
    functionLinenumberEnd: 79
    functionName: MpaReader::score
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - header::parse_frame_header
    - Score::Supported
    - ScopedStream<&mut MediaSourceStream<'_>>::ignore_bytes
    - header::is_frame_header_word_synced
    - ScopedStream<&mut MediaSourceStream<'_>>::bytes_available
    - Ok
    - header::read_frame_header_word_no_sync
    linkageType: ''
    returnType: Result
    signature: 'fn score(mut src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:87,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:87,1
    - Dst: MpaReader::try_new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 10
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: MpaReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - MpaReader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:93,1
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:107,1
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 135
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 135
    functionName: MpaReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:141,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:141,1
    - Dst: audio
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:141,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 154
      start: 139
    functionDepth: 15
    functionLinenumber: 139
    functionLinenumberEnd: 154
    functionName: MpaReader::format_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - expect
    - as_ref
    - audio
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: MpaReader::media_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_mpeg_frame
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:163,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:165,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:168,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:170,1
    - Dst: is_maybe_info_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:174,1
    - Dst: try_read_info_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:175,1
    - Dst: Option::is_some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:175,1
    - Dst: is_maybe_vbri_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:181,1
    - Dst: try_read_vbri_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:182,1
    - Dst: Option::is_some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:182,1
    - Dst: Result::duration
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:194,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:198,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:200,1
    - Dst: PacketBuilder::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:204,1
    - Dst: Self::track_id
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:204,1
    - Dst: pts
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:204,1
    - Dst: trimmed_dur
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:204,1
    - Dst: map
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:209,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:209,1
    - Dst: String::timestamp_from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:212,1
    - Dst: data
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:204,1
    - Dst: build
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:204,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:217,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:217,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 79
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 218
      start: 160
    functionDepth: 16
    functionLinenumber: 160
    functionLinenumberEnd: 218
    functionName: MpaReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - try_read_info_tag
    - Ok
    - is_maybe_info_tag
    - Self::track_id
    - map
    - Option::is_some
    - checked_add
    - Result::kind
    - build
    - String::timestamp_from
    - data
    - Some
    - and_then
    - try_read_vbri_tag
    - Result::duration
    - read_mpeg_frame
    - is_maybe_vbri_tag
    - pts
    - Err
    - PacketBuilder::new
    - trimmed_dur
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 2
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: MpaReader::metadata
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: MpaReader::chapters
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: MpaReader::tracks
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:244,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:244,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:247,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:247,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:247,1
    - Dst: map
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:252,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:255,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:256,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:259,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:259,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:260,1
    - Dst: Self::checked_add
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:261,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:260,1
    - Dst: String::checked_add
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:262,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:262,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:266,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:270,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:274,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:279,1
    - Dst: MpaReader::preseek_coarse
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:293,1
    - Dst: MpaReader::preseek_accurate
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:294,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:304,1
    - Dst: header::sync_frame
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:309,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:311,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:316,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:318,1
    - Dst: header::parse_frame_header
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:322,1
    - Dst: pos
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:325,1
    - Dst: Result::duration
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:328,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:334,1
    - Dst: read_main_data_begin
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:344,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:360,1
    - Dst: usize::len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:360,1
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:382,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:390,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:402,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 179
    argCount: 2
    argNames:
    - mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 403
      start: 232
    functionDepth: 11
    functionLinenumber: 232
    functionLinenumberEnd: 403
    functionName: MpaReader::seek
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - ok_or
    - pos
    - String::checked_add
    - Ok
    - header::parse_frame_header
    - read_main_data_begin
    - is_seekable
    - map
    - seek_buffered
    - checked_add
    - Result::kind
    - header::sync_frame
    - i64::from
    - Self::checked_add
    - and_then
    - symphonia_core::errors::seek_error
    - std::cmp::min
    - Default::default
    - unwrap_or
    - Result::duration
    - Timestamp::from
    - MpaReader::preseek_accurate
    - calc_timestamp
    - usize::len
    - Error::SeekError
    - Err
    - MpaReader::preseek_coarse
    - ignore_bytes
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: MpaReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_mpeg_frame_strict
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:416,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:419,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:421,1
    - Dst: Result::codec
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:422,1
    - Dst: '&mut Self::with_sample_rate'
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:421,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:421,1
    - Dst: channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:424,1
    - Dst: Track::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:427,1
    - Dst: Result::with_codec_params
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:429,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:429,1
    - Dst: try_read_info_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:432,1
    - Dst: Result::with_delay
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:435,1
    - Dst: '&mut Self::with_padding'
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:435,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:443,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:443,1
    - Dst: Result::num_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:443,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:446,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:446,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:448,1
    - Dst: u16::saturating_sub
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:448,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:448,1
    - Dst: try_read_vbri_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:451,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:454,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:454,1
    - Dst: Result::num_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:454,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:457,1
    - Dst: Option::seek_buffered_rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:462,1
    - Dst: Option::is_seekable
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:465,1
    - Dst: estimate_num_mpeg_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:468,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:469,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:469,1
    - Dst: Result::num_frames
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:469,1
    - Dst: Result::with_duration
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:476,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:476,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:479,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:480,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:480,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:480,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:482,1
    - Dst: MediaInfo::from_track
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:484,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:487,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 119
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 491
      start: 414
    functionDepth: 17
    functionLinenumber: 414
    functionLinenumberEnd: 491
    functionName: MpaReader::try_new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - '&mut Self::with_padding'
    - estimate_num_mpeg_frames
    - try_read_info_tag
    - Result::num_frames
    - '&mut Self::with_sample_rate'
    - CodecParameters::Audio
    - '&mut Self::with_channels'
    - Track::new
    - Result::with_delay
    - Ok
    - Result::with_duration
    - unwrap_or_default
    - read_mpeg_frame_strict
    - Result::codec
    - AudioCodecParameters::new
    - Result::with_codec_params
    - Option::pos
    - Result::with_num_frames
    - MediaInfo::from_track
    - channels
    - u64::from
    - i64::from
    - try_read_vbri_tag
    - unwrap_or
    - Timestamp::from
    - Option::is_seekable
    - u16::saturating_sub
    - Result::for_codec
    - Option::seek_buffered_rev
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: byte_len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:503,1
    - Dst: u128::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:504,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:505,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:512,1
    - Dst: u128::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:520,1
    - Dst: Option<Timestamp>::abs_delta
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:520,1
    - Dst: Duration::get
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:520,1
    - Dst: u128::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:525,1
    - Dst: Timestamp::abs_delta
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:525,1
    - Dst: Duration::get
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:525,1
    - Dst: u128::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:529,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:529,1
    - Dst: seek
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:533,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:533,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:534,1
    - Dst: map_err
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:534,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:534,1
    - Dst: read_mpeg_frame_strict
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:538,1
    - Dst: u128::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:541,1
    - Dst: pos
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:541,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:545,1
    - Dst: Result::duration
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:549,1
    - Dst: Timestamp::checked_add
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:555,1
    - Dst: Self::align_down
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:557,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:557,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:555,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:561,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 79
    argCount: 3
    argNames:
    - required_ts
    - min_ts
    - max_ts
    argTypes:
    - Timestamp
    - Timestamp
    - Option<Timestamp>
    constantsTouched: []
    func_position:
      end: 562
      start: 495
    functionDepth: 12
    functionLinenumber: 495
    functionLinenumberEnd: 562
    functionName: MpaReader::preseek_coarse
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Duration::get
    - Option::unwrap_or
    - Timestamp::abs_delta
    - pos
    - byte_len
    - Ok
    - saturating_sub
    - Self::align_down
    - read_mpeg_frame_strict
    - u128::from
    - try_into
    - Option<Timestamp>::abs_delta
    - symphonia_core::errors::seek_error
    - Option::expect
    - map_err
    - Result::duration
    - Timestamp::checked_add
    - SeekFrom::Start
    - Error::SeekError
    - seek
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'fn preseek_coarse(&mut self,required_ts: Timestamp,min_ts: Timestamp,max_ts:
      Option<Timestamp>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: seek
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:568,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:568,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:573,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:580,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - required_ts
    - min_ts
    argTypes:
    - Timestamp
    - Timestamp
    constantsTouched: []
    func_position:
      end: 581
      start: 566
    functionDepth: 12
    functionLinenumber: 566
    functionLinenumberEnd: 581
    functionName: MpaReader::preseek_accurate
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::seek_error
    - Ok
    - SeekFrom::Start
    - seek
    linkageType: ''
    returnType: Result
    signature: 'fn preseek_accurate(&mut self, required_ts: Timestamp, min_ts: Timestamp)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: header::sync_frame
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:588,1
    - Dst: header::parse_frame_header
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:591,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:600,1
    - Dst: to_be_bytes
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:600,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:603,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:606,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut MediaSourceStream<''_>'
    constantsTouched: []
    func_position:
      end: 607
      start: 585
    functionDepth: 15
    functionLinenumber: 585
    functionLinenumberEnd: 607
    functionName: read_mpeg_frame
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - header::sync_frame
    - header::parse_frame_header
    - Result::read_buf_exact
    - to_be_bytes
    - copy_from_slice
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read_mpeg_frame(reader: &mut MediaSourceStream<''_>) -> Result<(FrameHeader,
      Vec<u8>)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_mpeg_frame
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:613,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:616,1
    - Dst: header::read_frame_header_word_no_sync
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:620,1
    - Dst: header::is_frame_header_word_synced
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:624,1
    - Dst: is_frame_header_similar
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:624,1
    - Dst: Result::seek_buffered_rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:630,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:630,1
    - Dst: Result::seek_buffered
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:636,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:638,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut MediaSourceStream<''_>'
    constantsTouched: []
    func_position:
      end: 640
      start: 610
    functionDepth: 16
    functionLinenumber: 610
    functionLinenumberEnd: 640
    functionName: read_mpeg_frame_strict
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - read_mpeg_frame
    - Ok
    - Result::pos
    - header::is_frame_header_word_synced
    - Result::len
    - Result::seek_buffered
    - is_frame_header_similar
    - Result::seek_buffered_rev
    - header::read_frame_header_word_no_sync
    linkageType: ''
    returnType: Result
    signature: 'fn read_mpeg_frame_strict(reader: &mut MediaSourceStream<''_>) ->
      Result<(FrameHeader, Vec<u8>)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: header::parse_frame_header
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:644,1
    - Dst: Result::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:648,1
    - Dst: n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:648,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - header
    - sync
    argTypes:
    - '&FrameHeader'
    - u32
    constantsTouched: []
    func_position:
      end: 655
      start: 643
    functionDepth: 11
    functionLinenumber: 643
    functionLinenumberEnd: 655
    functionName: is_frame_header_similar
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Result::n_channels
    - header::parse_frame_header
    - n_channels
    linkageType: ''
    returnType: bool
    signature: 'fn is_frame_header_similar(header: &FrameHeader, sync: u32) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:667,1
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:671,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:672,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:676,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:676,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:679,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - reader
    - header
    argTypes:
    - '&mut B'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 680
      start: 664
    functionDepth: 14
    functionLinenumber: 664
    functionLinenumberEnd: 680
    functionName: read_main_data_begin
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - u16::from
    - Result::is_mpeg1
    - Result::read_u8
    - Result::read_be_u16
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read_main_data_begin<B: ReadBytes>(reader: &mut B, header: &FrameHeader)
      -> Result<u16>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:697,1
    - Dst: Result::byte_len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:702,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:725,1
    - Dst: Result::seek_buffered_rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:730,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:730,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut MediaSourceStream<''_>'
    constantsTouched: []
    func_position:
      end: 733
      start: 683
    functionDepth: 3
    functionLinenumber: 683
    functionLinenumberEnd: 733
    functionName: estimate_num_mpeg_frames
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Result::seek_buffered_rev
    - Result::pos
    - Some
    - Result::byte_len
    linkageType: ''
    returnType: Option
    signature: 'fn estimate_num_mpeg_frames(reader: &mut MediaSourceStream<''_>) ->
      Option<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: try_read_info_tag_inner
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:764,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:764,1
    - Dst: Codebook::flatten
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - buf
    - header
    argTypes:
    - '&[u8]'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 765
      start: 761
    functionDepth: 13
    functionLinenumber: 761
    functionLinenumberEnd: 765
    functionName: try_read_info_tag
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - try_read_info_tag_inner
    - Result::ok
    - Codebook::flatten
    linkageType: ''
    returnType: Option
    signature: 'fn try_read_info_tag(buf: &[u8], header: &FrameHeader) -> Option<XingInfoTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_maybe_info_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:769,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:770,1
    - Dst: Result::side_info_len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:775,1
    - Dst: Crc16AnsiLe::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:778,1
    - Dst: Self::process_buf_bytes
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:779,1
    - Dst: MonitorStream::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:782,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:782,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:785,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:788,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:795,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:797,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:797,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:799,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:799,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:803,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:804,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:810,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:810,1
    - Dst: Result::inner
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:819,1
    - Dst: MediaSourceStream::bytes_available
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:819,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:822,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:825,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:828,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:831,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:833,1
    - Dst: powi
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:833,1
    - Dst: parse_lame_tag_replaygain
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:837,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:837,1
    - Dst: parse_lame_tag_replaygain
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:840,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:840,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:843,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:846,1
    - Dst: Result::read_be_u24
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:849,1
    - Dst: '&mut Self::saturating_sub'
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:855,1
    - Dst: Result::inner
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:864,1
    - Dst: MediaSourceStream::bytes_available
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:864,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:866,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:869,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:872,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:875,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:878,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:884,1
    - Dst: Result::inner_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:884,1
    - Dst: '&mut B::read_be_u16'
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:884,1
    - Dst: u16::is_none_or
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:899,1
    - Dst: Result::monitor
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:899,1
    - Dst: '&M::crc'
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:899,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:903,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:904,1
    - Dst: into
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:904,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:924,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:924,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 205
    argCount: 2
    argNames:
    - buf
    - header
    argTypes:
    - '&[u8]'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 925
      start: 767
    functionDepth: 12
    functionLinenumber: 767
    functionLinenumberEnd: 925
    functionName: try_read_info_tag_inner
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - MediaSourceStream::bytes_available
    - Result::read_be_u16
    - Result::side_info_len
    - Ok
    - Self::process_buf_bytes
    - is_maybe_info_tag
    - Result::read_buf_exact
    - Crc16AnsiLe::new
    - '&M::crc'
    - '&mut Self::saturating_sub'
    - String::from_utf8_lossy
    - Result::monitor
    - powi
    - parse_lame_tag_replaygain
    - Result::read_quad_bytes
    - Result::read_u8
    - Some
    - MonitorStream::new
    - Result::inner
    - Result::read_be_u24
    - u16::is_none_or
    - Result::read_be_u32
    - '&mut B::read_be_u16'
    - into
    - Result::inner_mut
    - BufReader::new
    linkageType: ''
    returnType: Result
    signature: 'fn try_read_info_tag_inner(buf: &[u8], header: &FrameHeader) -> Result<Option<XingInfoTag>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:933,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - value
    - expected_name
    argTypes:
    - u16
    - u8
    constantsTouched: []
    func_position:
      end: 938
      start: 927
    functionDepth: 0
    functionLinenumber: 927
    functionLinenumberEnd: 938
    functionName: parse_lame_tag_replaygain
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'fn parse_lame_tag_replaygain(value: u16, expected_name: u8) -> Option<f32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::side_info_len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:952,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:955,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:967,1
    - Dst: any
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:967,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 37
    argCount: 2
    argNames:
    - buf
    - header
    argTypes:
    - '&[u8]'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 968
      start: 942
    functionDepth: 11
    functionLinenumber: 942
    functionLinenumberEnd: 968
    functionName: is_maybe_info_tag
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - any
    - Result::side_info_len
    - iter
    - Result::len
    linkageType: ''
    returnType: bool
    signature: 'fn is_maybe_info_tag(buf: &[u8], header: &FrameHeader) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: try_read_vbri_tag_inner
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:983,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:983,1
    - Dst: Codebook::flatten
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:983,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - buf
    - header
    argTypes:
    - '&[u8]'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 984
      start: 980
    functionDepth: 13
    functionLinenumber: 980
    functionLinenumberEnd: 984
    functionName: try_read_vbri_tag
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - Result::ok
    - Codebook::flatten
    - try_read_vbri_tag_inner
    linkageType: ''
    returnType: Option
    signature: 'fn try_read_vbri_tag(buf: &[u8], header: &FrameHeader) -> Option<VbriTag>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_maybe_vbri_tag
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:988,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:989,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:992,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:995,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:998,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1001,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1005,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1008,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1012,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1013,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1015,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1016,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1018,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1018,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 2
    argNames:
    - buf
    - header
    argTypes:
    - '&[u8]'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 1019
      start: 986
    functionDepth: 12
    functionLinenumber: 986
    functionLinenumberEnd: 1019
    functionName: try_read_vbri_tag_inner
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Result::read_quad_bytes
    - is_maybe_vbri_tag
    - Some
    - Result::read_be_u16
    - BufReader::new
    - Ok
    - Result::read_be_u32
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn try_read_vbri_tag_inner(buf: &[u8], header: &FrameHeader) -> Result<Option<VbriTag>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1033,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1045,1
    - Dst: any
      Src: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs:1045,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 32
    argCount: 2
    argNames:
    - buf
    - header
    argTypes:
    - '&[u8]'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 1046
      start: 1023
    functionDepth: 11
    functionLinenumber: 1023
    functionLinenumberEnd: 1046
    functionName: is_maybe_vbri_tag
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - any
    - iter
    - Result::len
    linkageType: ''
    returnType: bool
    signature: 'fn is_maybe_vbri_tag(buf: &[u8], header: &FrameHeader) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:125,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - sb_quant_info
    - class
    argTypes:
    - '&SbQuantInfo'
    - u8
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: find_quant_class
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs
    functionUses: 1
    functionsReached:
    - usize::from
    linkageType: ''
    returnType: '&''static QuantClass'
    signature: 'fn find_quant_class(sb_quant_info: &SbQuantInfo, class: u8) -> &''static
      QuantClass'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - sb_info
    - sb
    argTypes:
    - '&SbInfo'
    - usize
    constantsTouched: []
    func_position:
      end: 132
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionName: find_sb_quant_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs
    functionUses: 1
    functionsReached:
    - usize::from
    linkageType: ''
    returnType: '&''static SbQuantInfo'
    signature: 'fn find_sb_quant_info(sb_info: &SbInfo, sb: usize) -> &''static SbQuantInfo'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:136,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:153,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - header
    argTypes:
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 162
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 162
    functionName: find_sb_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - Result::is_mpeg1
    linkageType: ''
    returnType: '&''static SbInfo'
    signature: 'fn find_sb_info(header: &FrameHeader) -> &''static SbInfo'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::util::bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 3
    argNames:
    - bits
    - factor
    - raw
    argTypes:
    - u32
    - f32
    - u32
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: dequantize
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs
    functionUses: 2
    functionsReached:
    - symphonia_core::util::bits::sign_extend_leq32_to_i32
    linkageType: ''
    returnType: f32
    signature: 'fn dequantize(bits: u32, factor: f32, raw: u32) -> f32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 15
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: Layer2::new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs
    functionUses: 1
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:238,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:238,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:240,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:240,1
    - Dst: Result::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:246,1
    - Dst: find_sb_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:248,1
    - Dst: min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:250,1
    - Dst: find_sb_quant_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:264,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:267,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:267,1
    - Dst: find_sb_quant_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:274,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:276,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:276,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:286,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:295,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:299,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:300,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:303,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:307,1
    - Dst: find_sb_quant_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:326,1
    - Dst: find_quant_class
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:332,1
    - Dst: dequantize
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:336,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:341,1
    - Dst: find_quant_class
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:358,1
    - Dst: find_sb_quant_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:358,1
    - Dst: dequantize
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:360,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:363,1
    - Dst: '&mut AudioBuffer<f32>::render_uninit'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:375,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:375,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:377,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:377,1
    - Dst: take
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:377,1
    - Dst: '&mut AudioBuffer<f32>::plane_mut'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:379,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:381,1
    - Dst: synthesis::synthesis
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:383,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs:386,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 288
    argCount: 3
    argNames:
    - reader
    - header
    - out
    argTypes:
    - '&mut BufReader<''_>'
    - '&FrameHeader'
    - '&mut AudioBuffer<f32>'
    constantsTouched: []
    func_position:
      end: 387
      start: 231
    functionDepth: 14
    functionLinenumber: 231
    functionLinenumberEnd: 387
    functionName: Layer2::decode
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs
    functionUses: 0
    functionsReached:
    - Result::n_channels
    - Result::read_buf_bytes_available_ref
    - take
    - Result::read_be_u16
    - find_sb_info
    - Ok
    - symphonia_core::errors::decode_error
    - synthesis::synthesis
    - find_quant_class
    - enumerate
    - u32::from
    - i32::read_bits_leq32
    - Some
    - BitReaderLtr::new
    - find_sb_quant_info
    - '&mut AudioBuffer<f32>::render_uninit'
    - usize::from
    - min
    - dequantize
    - Result::iter
    - '&mut AudioBuffer<f32>::plane_mut'
    linkageType: ''
    returnType: Result
    signature: 'fn decode(&mut self,reader: &mut BufReader<''_>,header: &FrameHeader,out:
      &mut AudioBuffer<f32>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::fill
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: zero
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs
    functionUses: 11
    functionsReached:
    - Result::fill
    linkageType: ''
    returnType: void
    signature: 'pub(super) fn zero(buf: &mut [f32; 576])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::fill
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:55,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:56,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:73,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:74,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:75,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:79,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:79,1
    - Dst: Codebook::is_empty
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:96,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:109,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:122,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:128,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:140,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:144,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:155,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:167,1
    - Dst: count_ones
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:172,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:175,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:215,1
    - Dst: fill
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:234,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:236,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 248
    argCount: 4
    argNames:
    - bs
    - channel
    - part3_bits
    - buf
    argTypes:
    - '&mut B'
    - '&GranuleChannel'
    - u32
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 237
      start: 47
    functionDepth: 11
    functionLinenumber: 47
    functionLinenumberEnd: 237
    functionName: read_huffman_samples
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - Result::fill
    - i32::ignore_bits
    - i32::read_codebook
    - i32::read_bits_leq32
    - iter
    - count_ones
    - fill
    - std::cmp::min
    - Codebook::is_empty
    - Ok
    - enumerate
    - i32::read_bit
    linkageType: ''
    returnType: Result
    signature: 'pub(super) fn read_huffman_samples<B: ReadBitsLtr>(bs: &mut B,channel:
      &GranuleChannel,part3_bits: u32,buf: &mut [f32; 576],) -> Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:259,1
    - Dst: '&''static [usize]::iter'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:264,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:264,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:264,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:275,1
    - Dst: f64::powf
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:280,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:280,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:284,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 50
    argCount: 3
    argNames:
    - channel
    - bands
    - buf
    argTypes:
    - '&GranuleChannel'
    - '&[usize]'
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 291
      start: 240
    functionDepth: 11
    functionLinenumber: 240
    functionLinenumberEnd: 291
    functionName: requantize_long
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs
    functionUses: 1
    functionsReached:
    - zip
    - f64::powf
    - f64::from
    - std::cmp::min
    - enumerate
    - '&''static [usize]::iter'
    - i32::from
    linkageType: ''
    returnType: void
    signature: 'fn requantize_long(channel: &GranuleChannel, bands: &[usize], buf:
      &mut [f32; 576])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:314,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:318,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:319,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:320,1
    - Dst: '&''static [usize]::iter'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:330,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:330,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:330,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:338,1
    - Dst: f64::powf
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:343,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:343,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:347,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 63
    argCount: 4
    argNames:
    - channel
    - bands
    - switch
    - buf
    argTypes:
    - '&GranuleChannel'
    - '&[usize]'
    - usize
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 355
      start: 294
    functionDepth: 11
    functionLinenumber: 294
    functionLinenumberEnd: 355
    functionName: requantize_short
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs
    functionUses: 1
    functionsReached:
    - zip
    - f64::powf
    - f64::from
    - std::cmp::min
    - enumerate
    - '&''static [usize]::iter'
    - i32::from
    linkageType: ''
    returnType: void
    signature: 'fn requantize_short(channel: &GranuleChannel,bands: &[usize],switch:
      usize,buf: &mut [f32; 576],)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: requantize_short
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:361,1
    - Dst: requantize_long
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:374,1
    - Dst: requantize_short
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:375,1
    - Dst: requantize_long
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs:378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 3
    argNames:
    - header
    - channel
    - buf
    argTypes:
    - '&FrameHeader'
    - '&GranuleChannel'
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 381
      start: 358
    functionDepth: 12
    functionLinenumber: 358
    functionLinenumberEnd: 381
    functionName: requantize
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs
    functionUses: 1
    functionsReached:
    - requantize_long
    - requantize_short
    linkageType: ''
    returnType: void
    signature: 'pub(super) fn requantize(header: &FrameHeader, channel: &GranuleChannel,
      buf: &mut [f32; 576])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::iter_mut'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:146,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - mid
    - side
    argTypes:
    - '&mut [f32]'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: process_mid_side
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs
    functionUses: 3
    functionsReached:
    - zip
    - '&mut [f32]::iter_mut'
    linkageType: ''
    returnType: void
    signature: 'fn process_mid_side(mid: &mut [f32], side: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:177,1
    - Dst: '&mut [f32]::iter_mut'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:179,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:179,1
    - Dst: process_mid_side
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:186,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 6
    argNames:
    - intensity_pos
    - intensity_table
    - intensity_max
    - mid_side
    - ch0
    - ch1
    argTypes:
    - u8
    - '&[(f32, f32)]'
    - u8
    - bool
    - '&mut [f32]'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 188
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 188
    functionName: process_intensity
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs
    functionUses: 2
    functionsReached:
    - usize::from
    - zip
    - process_mid_side
    - '&mut [f32]::iter_mut'
    linkageType: ''
    returnType: void
    signature: 'fn process_intensity(intensity_pos: u8,intensity_table: &[(f32, f32)],intensity_max:
      u8,mid_side: bool,ch0: &mut [f32],ch1: &mut [f32],)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bool::iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:193,1
    - Dst: any
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - band
    argTypes:
    - '&[f32]'
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 11
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: is_zero_band
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs
    functionUses: 2
    functionsReached:
    - any
    - bool::iter
    linkageType: ''
    returnType: bool
    signature: 'fn is_zero_band(band: &[f32]) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:216,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:221,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:229,1
    - Dst: '&''static [usize]::iter'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:233,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:233,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:233,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:233,1
    - Dst: rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:238,1
    - Dst: is_zero_band
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:240,1
    - Dst: process_intensity
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 72
    argCount: 6
    argNames:
    - header
    - granule
    - mid_side
    - max_bound
    - ch0
    - ch1
    argTypes:
    - '&FrameHeader'
    - '&Granule'
    - bool
    - usize
    - '&mut [f32; 576]'
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 261
      start: 198
    functionDepth: 11
    functionLinenumber: 198
    functionLinenumberEnd: 261
    functionName: process_intensity_long_block
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - rev
    - Result::is_mpeg1
    - zip
    - is_zero_band
    - process_intensity
    - iter
    - copy_from_slice
    - '&''static [usize]::iter'
    linkageType: ''
    returnType: usize
    signature: 'fn process_intensity_long_block(header: &FrameHeader,granule: &Granule,mid_side:
      bool,max_bound: usize,ch0: &mut [f32; 576],ch1: &mut [f32; 576],) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:334,1
    - Dst: '&''static [usize]::len'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:334,1
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:342,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:347,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:353,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:354,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:362,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:362,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:362,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:362,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:362,1
    - Dst: rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:362,1
    - Dst: is_zero_band
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:375,1
    - Dst: process_intensity
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:379,1
    - Dst: process_mid_side
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:390,1
    - Dst: is_zero_band
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:397,1
    - Dst: process_intensity
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:400,1
    - Dst: process_mid_side
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:410,1
    - Dst: is_zero_band
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:416,1
    - Dst: process_intensity
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:419,1
    - Dst: process_mid_side
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:429,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:456,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:456,1
    - Dst: rev
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:456,1
    - Dst: is_zero_band
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:457,1
    - Dst: process_intensity
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:460,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 236
    argCount: 7
    argNames:
    - header
    - granule
    - is_mixed
    - mid_side
    - max_bound
    - ch0
    - ch1
    argTypes:
    - '&FrameHeader'
    - '&Granule'
    - bool
    - bool
    - usize
    - '&mut [f32; 576]'
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 482
      start: 265
    functionDepth: 11
    functionLinenumber: 265
    functionLinenumberEnd: 482
    functionName: process_intensity_short_block
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - process_mid_side
    - rev
    - Result::is_mpeg1
    - zip
    - is_zero_band
    - Some
    - iter
    - process_intensity
    - step_by
    - '&''static [usize]::len'
    - copy_from_slice
    linkageType: ''
    returnType: usize
    signature: 'fn process_intensity_short_block(header: &FrameHeader,granule: &Granule,is_mixed:
      bool,mid_side: bool,max_bound: usize,ch0: &mut [f32; 576],ch1: &mut [f32; 576],)
      -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:499,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:504,1
    - Dst: io::Result::split_first_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:509,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:511,1
    - Dst: std::cmp::max
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:521,1
    - Dst: process_intensity_short_block
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:528,1
    - Dst: process_intensity_long_block
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:530,1
    - Dst: process_mid_side
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:543,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs:555,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 68
    argCount: 3
    argNames:
    - header
    - granule
    - ch
    argTypes:
    - '&FrameHeader'
    - '&mut Granule'
    - '&mut [[f32; 576]; 2]'
    constantsTouched: []
    func_position:
      end: 556
      start: 485
    functionDepth: 12
    functionLinenumber: 485
    functionLinenumberEnd: 556
    functionName: stereo
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs
    functionUses: 3
    functionsReached:
    - process_mid_side
    - process_intensity_short_block
    - process_intensity_long_block
    - std::cmp::max
    - Ok
    - symphonia_core::errors::decode_error
    - io::Result::split_first_mut
    linkageType: ''
    returnType: Result
    signature: 'pub(super) fn stereo(header: &FrameHeader,granule: &mut Granule,ch:
      &mut [[f32; 576]; 2],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 40
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionName: BitResevoir::new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 1
    functionsReached:
    - into_boxed_slice
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&[u8]::len'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:43,1
    - Dst: len
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:50,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:51,1
    - Dst: copy_within
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:62,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:65,1
    - Dst: copy_within
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:73,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:80,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 61
    argCount: 2
    argNames:
    - pkt_main_data
    - main_data_begin
    argTypes:
    - '&[u8]'
    - usize
    constantsTouched: []
    func_position:
      end: 94
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 94
    functionName: BitResevoir::fill
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 0
    functionsReached:
    - '&[u8]::len'
    - len
    - copy_within
    - copy_from_slice
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn fill(&mut self, pkt_main_data: &[u8], main_data_begin: usize)
      -> Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: BitResevoir::consume
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 0
    functionsReached:
    - min
    linkageType: ''
    returnType: void
    signature: 'pub fn consume(&mut self, len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: BitResevoir::bytes_ref
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[u8]'
    signature: pub fn bytes_ref(&self) -> &[u8]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: BitResevoir::clear
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: pub fn clear(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - version
    argTypes:
    - MpegVersion
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: FrameData::granules_mut
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: '&mut [Granule]'
    signature: 'fn granules_mut(&mut self, version: MpegVersion) -> &mut [Granule]'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 225
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 225
    functionName: GranuleChannel::default
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 251
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 251
    functionName: GranuleChannel::fmt
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:266,1
    - Dst: BitResevoir::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 269
      start: 262
    functionDepth: 15
    functionLinenumber: 262
    functionLinenumberEnd: 269
    functionName: Layer3::new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 1
    functionsReached:
    - Default::default
    - BitResevoir::new
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bytes_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:278,1
    - Dst: Result::n_granules
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:282,1
    - Dst: Result::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:288,1
    - Dst: requantize::zero
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:289,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:291,1
    - Dst: Result::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:304,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:308,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:309,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:314,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:320,1
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:324,1
    - Dst: bitstream::read_scale_factors_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:325,1
    - Dst: bitstream::read_scale_factors_mpeg2
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:328,1
    - Dst: Result::is_intensity_stereo
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:330,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:335,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:339,1
    - Dst: requantize::read_huffman_samples
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:347,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:359,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:360,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:362,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:369,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 128
    argCount: 3
    argNames:
    - header
    - underflow_bits
    - frame_data
    argTypes:
    - '&FrameHeader'
    - u32
    - '&mut FrameData'
    constantsTouched: []
    func_position:
      end: 370
      start: 272
    functionDepth: 11
    functionLinenumber: 272
    functionLinenumberEnd: 370
    functionName: Layer3::read_main_data
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 1
    functionsReached:
    - bytes_ref
    - Result::n_channels
    - i32::ignore_bits
    - Result::is_mpeg1
    - Result::is_intensity_stereo
    - Result::kind
    - bitstream::read_scale_factors_mpeg1
    - bitstream::read_scale_factors_mpeg2
    - requantize::zero
    - requantize::read_huffman_samples
    - Result::len
    - BitReaderLtr::new
    - Err
    - Ok
    - symphonia_core::errors::decode_error
    - Result::n_granules
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn read_main_data(&mut self,header: &FrameHeader,underflow_bits: u32,frame_data:
      &mut FrameData,) -> Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:382,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:384,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:384,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:386,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:388,1
    - Dst: bitstream::read_side_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:392,1
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:398,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:399,1
    - Dst: fill
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:405,1
    - Dst: Layer3::read_main_data
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:408,1
    - Dst: consume
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:411,1
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:416,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:417,1
    - Dst: Result::n_granules
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:421,1
    - Dst: requantize::requantize
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:425,1
    - Dst: requantize::requantize
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:430,1
    - Dst: stereo::stereo
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:433,1
    - Dst: '&mut AudioBuffer<f32>::render_uninit'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:438,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:438,1
    - Dst: Result::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:441,1
    - Dst: hybrid_synthesis::reorder
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:443,1
    - Dst: hybrid_synthesis::antialias
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:450,1
    - Dst: hybrid_synthesis::hybrid_synthesis
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:454,1
    - Dst: hybrid_synthesis::frequency_inversion
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:462,1
    - Dst: '&mut AudioBuffer<f32>::plane_mut'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:465,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:467,1
    - Dst: synthesis::synthesis
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:470,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs:479,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 153
    argCount: 3
    argNames:
    - reader
    - header
    - out
    argTypes:
    - '&mut BufReader<''_>'
    - '&FrameHeader'
    - '&mut AudioBuffer<f32>'
    constantsTouched: []
    func_position:
      end: 480
      start: 374
    functionDepth: 15
    functionLinenumber: 374
    functionLinenumberEnd: 480
    functionName: Layer3::decode
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
    functionUses: 0
    functionsReached:
    - Result::n_channels
    - Result::read_buf_bytes_available_ref
    - Result::read_be_u16
    - stereo::stereo
    - Ok
    - symphonia_core::errors::decode_error
    - synthesis::synthesis
    - hybrid_synthesis::frequency_inversion
    - hybrid_synthesis::antialias
    - hybrid_synthesis::reorder
    - fill
    - bitstream::read_side_info
    - clear
    - requantize::requantize
    - Result::n_granules
    - Some
    - BitReaderLtr::new
    - Default::default
    - '&mut AudioBuffer<f32>::render_uninit'
    - Layer3::read_main_data
    - consume
    - hybrid_synthesis::hybrid_synthesis
    - Err
    - '&mut AudioBuffer<f32>::plane_mut'
    linkageType: ''
    returnType: Result
    signature: 'fn decode(&mut self,reader: &mut BufReader<''_>,header: &FrameHeader,out:
      &mut AudioBuffer<f32>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - i
    - wrap
    argTypes:
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 560
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 560
    functionName: mpeg_gen_value
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/codebooks.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: 'fn mpeg_gen_value(i: u16, wrap: u16) -> u16'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [usize]::iter'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:187,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:187,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:187,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:187,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:187,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:201,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:201,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:201,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:210,1
    - Dst: max
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:213,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 98
    argCount: 3
    argNames:
    - header
    - channel
    - buf
    argTypes:
    - '&FrameHeader'
    - '&mut GranuleChannel'
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 215
      start: 153
    functionDepth: 11
    functionLinenumber: 153
    functionLinenumberEnd: 215
    functionName: reorder
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 1
    functionsReached:
    - zip
    - iter
    - step_by
    - max
    - copy_from_slice
    - '&''static [usize]::iter'
    linkageType: ''
    returnType: void
    signature: 'pub(super) fn reorder(header: &FrameHeader, channel: &mut GranuleChannel,
      buf: &mut [f32; 576])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:240,1
    - Dst: min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:240,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:267,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 46
    argCount: 2
    argNames:
    - channel
    - samples
    argTypes:
    - '&mut GranuleChannel'
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 277
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 277
    functionName: antialias
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 1
    functionsReached:
    - min
    - step_by
    linkageType: ''
    returnType: void
    signature: 'pub(super) fn antialias(channel: &mut GranuleChannel, samples: &mut
      [f32; 576])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: div_ceil
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:287,1
    - Dst: min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:310,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:317,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:317,1
    - Dst: imdct36::imdct36
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:322,1
    - Dst: min
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:332,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:339,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:339,1
    - Dst: imdct12_win
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:345,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:354,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:354,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:356,1
    - Dst: fill
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:357,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 84
    argCount: 3
    argNames:
    - channel
    - overlap
    - samples
    argTypes:
    - '&GranuleChannel'
    - '&mut [[f32; 18]; 32]'
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 359
      start: 280
    functionDepth: 4
    functionLinenumber: 280
    functionLinenumberEnd: 359
    functionName: hybrid_synthesis
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 1
    functionsReached:
    - expect
    - imdct12_win
    - imdct36::imdct36
    - min
    - fill
    - div_ceil
    - copy_from_slice
    - try_into
    linkageType: ''
    returnType: void
    signature: 'pub(super) fn hybrid_synthesis(channel: &GranuleChannel,overlap: &mut
      [[f32; 18]; 32],samples: &mut [f32; 576],)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 159
    argCount: 3
    argNames:
    - x
    - window
    - overlap
    argTypes:
    - '&mut [f32; 18]'
    - '&[f32; 36]'
    - '&mut [f32; 18]'
    constantsTouched: []
    func_position:
      end: 455
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 455
    functionName: imdct12_win
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn imdct12_win(x: &mut [f32; 18], window: &[f32; 36], overlap: &mut
      [f32; 18])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: step_by
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:475,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:477,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 50
    argCount: 1
    argNames:
    - samples
    argTypes:
    - '&mut [f32; 576]'
    constantsTouched: []
    func_position:
      end: 485
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 485
    functionName: frequency_inversion
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 1
    functionsReached:
    - step_by
    linkageType: ''
    returnType: void
    signature: 'pub fn frequency_inversion(samples: &mut [f32; 576])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:502,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&[f32; 6]'
    constantsTouched: []
    func_position:
      end: 508
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 508
    functionName: tests::imdct12_analytical
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 0
    functionsReached:
    - cos
    linkageType: ''
    returnType: '[f32; 12]'
    signature: 'fn imdct12_analytical(x: &[f32; 6]) -> [f32; 12]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: imdct12_win
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:522,1
    - Dst: imdct12_analytical
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:539,1
    - Dst: imdct12_analytical
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:540,1
    - Dst: imdct12_analytical
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:541,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 65
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 556
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 556
    functionName: tests::verify_imdct12_win
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 0
    functionsReached:
    - imdct12_analytical
    - imdct12_win
    linkageType: ''
    returnType: void
    signature: fn verify_imdct12_win()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: dct_iv
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:574,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 54
    argCount: 3
    argNames:
    - x
    - window
    - overlap
    argTypes:
    - '&mut [f32; 18]'
    - '&[f32; 36]'
    - '&mut [f32; 18]'
    constantsTouched: []
    func_position:
      end: 603
      start: 571
    functionDepth: 3
    functionLinenumber: 571
    functionLinenumberEnd: 603
    functionName: imdct36::imdct36
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 1
    functionsReached:
    - dct_iv
    linkageType: ''
    returnType: void
    signature: 'pub fn imdct36(x: &mut [f32; 18], window: &[f32; 36], overlap: &mut
      [f32; 18])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: sdct_ii_18
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:653,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 81
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[f32; 18]'
    - '&mut [f32; 18]'
    constantsTouched: []
    func_position:
      end: 660
      start: 608
    functionDepth: 2
    functionLinenumber: 608
    functionLinenumberEnd: 660
    functionName: imdct36::dct_iv
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 0
    functionsReached:
    - sdct_ii_18
    linkageType: ''
    returnType: void
    signature: 'fn dct_iv(x: &[f32; 18], y: &mut [f32; 18])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: sdct_ii_9
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:692,1
    - Dst: sdct_ii_9
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 143
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[f32; 18]'
    - '&mut [f32; 18]'
    constantsTouched: []
    func_position:
      end: 716
      start: 665
    functionDepth: 1
    functionLinenumber: 665
    functionLinenumberEnd: 716
    functionName: imdct36::sdct_ii_18
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 0
    functionsReached:
    - sdct_ii_9
    linkageType: ''
    returnType: void
    signature: 'fn sdct_ii_18(x: &[f32; 18], y: &mut [f32; 18])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 104
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[f32; 9]'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 779
      start: 721
    functionDepth: 0
    functionLinenumber: 721
    functionLinenumberEnd: 779
    functionName: imdct36::sdct_ii_9
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn sdct_ii_9(x: &[f32; 9], y: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:795,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&[f32; 18]'
    constantsTouched: []
    func_position:
      end: 800
      start: 786
    functionDepth: 0
    functionLinenumber: 786
    functionLinenumberEnd: 800
    functionName: imdct36::imdct36_analytical
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 0
    functionsReached:
    - cos
    linkageType: ''
    returnType: '[f32; 36]'
    signature: 'fn imdct36_analytical(x: &[f32; 18]) -> [f32; 36]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: super::imdct36
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:814,1
    - Dst: imdct36_analytical
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs:816,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 822
      start: 803
    functionDepth: 4
    functionLinenumber: 803
    functionLinenumberEnd: 822
    functionName: imdct36::verify_imdct36
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
    functionUses: 0
    functionsReached:
    - super::imdct36
    - imdct36_analytical
    linkageType: ''
    returnType: void
    signature: fn verify_imdct36()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:62,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:63,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:68,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:71,1
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:74,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:74,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:74,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:76,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:79,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:81,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:85,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:95,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:99,1
    - Dst: Result::is_mpeg2p5
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:107,1
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:119,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:154,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:160,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:161,1
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:174,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:174,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:176,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:177,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:179,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 170
    argCount: 3
    argNames:
    - bs
    - channel
    - header
    argTypes:
    - '&mut B'
    - '&mut GranuleChannel'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 180
      start: 57
    functionDepth: 16
    functionLinenumber: 57
    functionLinenumberEnd: 180
    functionName: read_granule_channel_side_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs
    functionUses: 1
    functionsReached:
    - Result::is_mpeg1
    - i32::read_bits_leq32
    - i32::read_bool
    - Ok
    - Result::is_mpeg2p5
    - symphonia_core::errors::decode_error
    - i32::read_bit
    linkageType: ''
    returnType: Result
    signature: 'fn read_granule_channel_side_info<B: ReadBitsLtr>(bs: &mut B,channel:
      &mut GranuleChannel,header: &FrameHeader,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:189,1
    - Dst: read_granule_channel_side_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:190,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - bs
    - granule
    - header
    argTypes:
    - '&mut B'
    - '&mut Granule'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 193
      start: 183
    functionDepth: 10
    functionLinenumber: 183
    functionLinenumberEnd: 193
    functionName: read_granule_side_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs
    functionUses: 1
    functionsReached:
    - read_granule_channel_side_info
    - Ok
    - count
    linkageType: ''
    returnType: Result
    signature: 'fn read_granule_side_info<B: ReadBitsLtr>(bs: &mut B,granule: &mut
      Granule,header: &FrameHeader,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::is_mpeg1
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:202,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:204,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:208,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:209,1
    - Dst: Result::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:213,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:214,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:215,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:222,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:226,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:227,1
    - Dst: '&mut FrameData::granules_mut'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:232,1
    - Dst: read_granule_side_info
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:233,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:236,1
    - Dst: Result::side_info_len
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:236,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 65
    argCount: 3
    argNames:
    - bs
    - header
    - frame_data
    argTypes:
    - '&mut B'
    - '&FrameHeader'
    - '&mut FrameData'
    constantsTouched: []
    func_position:
      end: 237
      start: 196
    functionDepth: 16
    functionLinenumber: 196
    functionLinenumberEnd: 237
    functionName: read_side_info
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs
    functionUses: 1
    functionsReached:
    - '&mut FrameData::granules_mut'
    - Result::n_channels
    - i32::ignore_bits
    - Result::is_mpeg1
    - i32::read_bits_leq32
    - read_granule_side_info
    - i32::read_bool
    - iter_mut
    - Result::side_info_len
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub(super) fn read_side_info<B: ReadBitsLtr>(bs: &mut B,header: &FrameHeader,frame_data:
      &mut FrameData,) -> Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:267,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:277,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:290,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:290,1
    - Dst: split_first_mut
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:297,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:299,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:302,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:310,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:317,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 125
    argCount: 4
    argNames:
    - bs
    - gr
    - ch
    - frame_data
    argTypes:
    - '&mut B'
    - usize
    - usize
    - '&mut FrameData'
    constantsTouched: []
    func_position:
      end: 318
      start: 240
    functionDepth: 16
    functionLinenumber: 240
    functionLinenumberEnd: 318
    functionName: read_scale_factors_mpeg1
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs
    functionUses: 1
    functionsReached:
    - split_first_mut
    - i32::read_bits_leq32
    - enumerate
    - iter
    - copy_from_slice
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub(super) fn read_scale_factors_mpeg1<B: ReadBitsLtr>(bs: &mut B,gr:
      usize,ch: usize,frame_data: &mut FrameData,) -> Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:337,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:372,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:412,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:412,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:412,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:418,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs:426,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 133
    argCount: 3
    argNames:
    - bs
    - is_intensity_stereo
    - channel
    argTypes:
    - '&mut B'
    - bool
    - '&mut GranuleChannel'
    constantsTouched: []
    func_position:
      end: 427
      start: 321
    functionDepth: 11
    functionLinenumber: 321
    functionLinenumberEnd: 427
    functionName: read_scale_factors_mpeg2
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - zip
    - iter
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'pub(super) fn read_scale_factors_mpeg2<B: ReadBitsLtr>(bs: &mut B,is_intensity_stereo:
      bool,channel: &mut GranuleChannel,) -> Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 15
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: Layer1::new
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs
    functionUses: 1
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:81,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:81,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:83,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:83,1
    - Dst: Result::n_channels
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:88,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:104,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:107,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:117,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:120,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:133,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:149,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:153,1
    - Dst: dequantize
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:156,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:166,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:170,1
    - Dst: dequantize
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:173,1
    - Dst: '&mut AudioBuffer<f32>::render_uninit'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:185,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:185,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:187,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:187,1
    - Dst: take
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:187,1
    - Dst: '&mut AudioBuffer<f32>::plane_mut'
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:189,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:191,1
    - Dst: synthesis::synthesis
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:193,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs:196,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 170
    argCount: 3
    argNames:
    - reader
    - header
    - out
    argTypes:
    - '&mut BufReader<''_>'
    - '&FrameHeader'
    - '&mut AudioBuffer<f32>'
    constantsTouched: []
    func_position:
      end: 197
      start: 74
    functionDepth: 14
    functionLinenumber: 74
    functionLinenumberEnd: 197
    functionName: Layer1::decode
    functionSourceFile: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs
    functionUses: 0
    functionsReached:
    - Result::n_channels
    - i32::read_bits_leq32
    - Result::read_buf_bytes_available_ref
    - enumerate
    - Some
    - Result::read_be_u16
    - take
    - '&mut AudioBuffer<f32>::plane_mut'
    - synthesis::synthesis
    - dequantize
    - BitReaderLtr::new
    - Result::iter
    - Ok
    - symphonia_core::errors::decode_error
    - '&mut AudioBuffer<f32>::render_uninit'
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn decode(&mut self,reader: &mut BufReader<''_>,header: &FrameHeader,out:
      &mut AudioBuffer<f32>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - channels
    argTypes:
    - '&Channels'
    constantsTouched: []
    func_position:
      end: 68
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 68
    functionName: map_channels
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: '[u8; 8]'
    signature: 'fn map_channels(channels: &Channels) -> [u8; 8]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:88,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:89,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:90,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:90,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:91,1
    - Dst: i32::read_bits_leq32_signed
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:97,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:100,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:101,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:102,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:103,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 3
    argNames:
    - bs
    - config
    - bps
    argTypes:
    - '&mut B'
    - '&MagicCookie'
    - u8
    constantsTouched: []
    func_position:
      end: 110
      start: 83
    functionDepth: 16
    functionLinenumber: 83
    functionLinenumberEnd: 110
    functionName: ElementChannel::try_read
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - i32::read_bits_leq32_signed
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn try_read<B: ReadBitsLtr>(bs: &mut B,config: &MagicCookie,bps: u8,)
      -> Result<ElementChannel>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [i32]::len'
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:113,1
    - Dst: '&mut [i32]::iter_mut'
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:119,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:119,1
    - Dst: lg3a
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:126,1
    - Dst: read_rice_code
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:127,1
    - Dst: Result::min
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:127,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:127,1
    - Dst: rice_code_to_signed
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:129,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:138,1
    - Dst: wrapping_sub
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:138,1
    - Dst: wrapping_mul
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:140,1
    - Dst: leading_zeros
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:149,1
    - Dst: read_rice_code
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:152,1
    - Dst: Result::min
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:152,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:162,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 79
    argCount: 2
    argNames:
    - bs
    - out
    argTypes:
    - '&mut B'
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 163
      start: 112
    functionDepth: 17
    functionLinenumber: 112
    functionLinenumberEnd: 163
    functionName: ElementChannel::read_residuals
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - wrapping_sub
    - '&mut [i32]::iter_mut'
    - enumerate
    - leading_zeros
    - wrapping_mul
    - wrapping_add
    - '&mut [i32]::len'
    - rice_code_to_signed
    - Ok
    - read_rice_code
    - Result::min
    - lg3a
    linkageType: ''
    returnType: Result
    signature: 'fn read_residuals<B: ReadBitsLtr>(&mut self, bs: &mut B, out: &mut
      [i32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:168,1
    - Dst: '&mut [i32]::is_empty'
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:173,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:174,1
    - Dst: '&mut [i32]::len'
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:186,1
    - Dst: clip_msbs
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:187,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:187,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:196,1
    - Dst: '&mut [i32]::len'
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:196,1
    - Dst: clip_msbs
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:197,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:197,1
    - Dst: '&mut [i32]::len'
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:204,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:212,1
    - Dst: rev
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:212,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:212,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:212,1
    - Dst: wrapping_mul
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:216,1
    - Dst: fold
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:212,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:217,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:221,1
    - Dst: clip_msbs
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:222,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:222,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:222,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:227,1
    - Dst: rev
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:227,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:227,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:227,1
    - Dst: signum
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:234,1
    - Dst: signum
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:249,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:263,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 182
    argCount: 1
    argNames:
    - out
    argTypes:
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 264
      start: 165
    functionDepth: 11
    functionLinenumber: 165
    functionLinenumberEnd: 264
    functionName: ElementChannel::predict
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - rev
    - zip
    - enumerate
    - iter
    - map
    - clip_msbs
    - wrapping_add
    - iter_mut
    - std::cmp::min
    - signum
    - '&mut [i32]::len'
    - '&mut [i32]::is_empty'
    - Ok
    - symphonia_core::errors::decode_error
    - wrapping_mul
    - fold
    linkageType: ''
    returnType: Result
    signature: 'fn predict(&mut self, out: &mut [i32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:284,1
    - Dst: MagicCookie::read
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:289,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:292,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:299,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:302,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:302,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:303,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:305,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:308,1
    - Dst: with_channels
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:309,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:309,1
    - Dst: with_sample_rate
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:310,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:312,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 51
    argCount: 2
    argNames:
    - params
    - _opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 313
      start: 281
    functionDepth: 15
    functionLinenumber: 281
    functionLinenumberEnd: 313
    functionName: AlacDecoder::try_new
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached:
    - MagicCookie::read
    - Ok
    - symphonia_core::errors::unsupported_error
    - with_sample_rate
    - std::cmp::min
    - AudioBuffer::new
    - with_channels
    - AudioSpec::new
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(params: &AudioCodecParameters, _opts: &AudioDecoderOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:316,1
    - Dst: map_channels
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:318,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:324,1
    - Dst: render_silence
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:325,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:328,1
    - Dst: plane_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:332,1
    - Dst: expect
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:332,1
    - Dst: decode_sce_or_cpe
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:338,1
    - Dst: plane_pair_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:349,1
    - Dst: expect
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:349,1
    - Dst: decode_sce_or_cpe
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:357,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:362,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:368,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:369,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:371,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:373,1
    - Dst: i32::realign
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:378,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:381,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:384,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:386,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:390,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:394,1
    - Dst: truncate
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:407,1
    - Dst: apply
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:414,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:417,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 134
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 418
      start: 315
    functionDepth: 16
    functionLinenumber: 315
    functionLinenumberEnd: 418
    functionName: AlacDecoder::decode_inner
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached:
    - expect
    - plane_pair_mut
    - i32::ignore_bits
    - Ok
    - i32::read_bits_leq32
    - decode_sce_or_cpe
    - render_silence
    - Some
    - i32::realign
    - i32::read_bool
    - BitReaderLtr::new
    - map_channels
    - apply
    - truncate
    - clear
    - symphonia_core::errors::decode_error
    - plane_mut
    linkageType: ''
    returnType: Result
    signature: 'fn decode_inner(&mut self, packet: &PacketRef<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 424
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 424
    functionName: AlacDecoder::reset
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::supported_codecs
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:428,1
    - Dst: '&''static [SupportedAudioCodec]::first'
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:428,1
    - Dst: expect
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 429
      start: 426
    functionDepth: 2
    functionLinenumber: 426
    functionLinenumberEnd: 429
    functionName: AlacDecoder::codec_info
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - '&''static [SupportedAudioCodec]::first'
    - expect
    - Self::supported_codecs
    linkageType: ''
    returnType: '&CodecInfo'
    signature: fn codec_info(&self) -> &CodecInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 433
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 433
    functionName: AlacDecoder::codec_params
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioCodecParameters'
    signature: fn codec_params(&self) -> &AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AlacDecoder::decode_inner
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:436,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:437,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:438,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:441,1
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 443
      start: 435
    functionDepth: 17
    functionLinenumber: 435
    functionLinenumberEnd: 443
    functionName: AlacDecoder::decode_ref
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - AlacDecoder::decode_inner
    - as_generic_audio_buffer_ref
    - Err
    - Ok
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ref(&mut self, packet: &PacketRef<''_>) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 447
      start: 445
    functionDepth: 15
    functionLinenumber: 445
    functionLinenumberEnd: 447
    functionName: AlacDecoder::finalize
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: FinalizeResult
    signature: fn finalize(&mut self) -> FinalizeResult
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 451
      start: 449
    functionDepth: 1
    functionLinenumber: 449
    functionLinenumberEnd: 451
    functionName: AlacDecoder::last_decoded
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn last_decoded(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:462,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:462,1
    - Dst: AlacDecoder::try_new
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 463
      start: 455
    functionDepth: 10
    functionLinenumber: 455
    functionLinenumberEnd: 463
    functionName: AlacDecoder::try_registry_new
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - AlacDecoder::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_registry_new(params: &AudioCodecParameters,opts: &AudioDecoderOptions,)
      -> Result<Box<dyn AudioDecoder>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 467
      start: 465
    functionDepth: 1
    functionLinenumber: 465
    functionLinenumberEnd: 467
    functionName: AlacDecoder::supported_codecs
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_audio_codec
    linkageType: ''
    returnType: '&''static [SupportedAudioCodec]'
    signature: fn supported_codecs() -> &'static [SupportedAudioCodec]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option<&mut [i32]>::is_some
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:480,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:483,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:486,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:487,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:490,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:491,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:492,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:496,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:502,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:504,1
    - Dst: u8::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:511,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:514,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:517,1
    - Dst: i32::read_bits_leq32_signed
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:518,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:522,1
    - Dst: ElementChannel::try_read
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:526,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:528,1
    - Dst: ElementChannel::try_read
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:528,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:536,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:536,1
    - Dst: read_residuals
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:540,1
    - Dst: predict
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:541,1
    - Dst: Option<&mut [i32]>::as_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:543,1
    - Dst: as_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:544,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:546,1
    - Dst: read_residuals
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:549,1
    - Dst: predict
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:550,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:556,1
    - Dst: decorrelate_mid_side
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:559,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:565,1
    - Dst: Option<&mut [i32]>::as_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:567,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:568,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:569,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:572,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:572,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:578,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:580,1
    - Dst: Option<&mut [i32]>::as_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:588,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:590,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:590,1
    - Dst: i32::read_bits_leq32_signed
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:591,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:591,1
    - Dst: i32::read_bits_leq32_signed
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:592,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:592,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:596,1
    - Dst: i32::read_bits_leq32_signed
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:597,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:597,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:602,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 258
    argCount: 5
    argNames:
    - config
    - bs
    - tail_bits
    - out0
    - out1
    argTypes:
    - '&MagicCookie'
    - '&mut B'
    - '&mut [u16]'
    - '&mut [i32]'
    - Option<&mut [i32]>
    constantsTouched: []
    func_position:
      end: 603
      start: 471
    functionDepth: 16
    functionLinenumber: 471
    functionLinenumberEnd: 603
    functionName: decode_sce_or_cpe
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached:
    - predict
    - iter
    - ElementChannel::try_read
    - iter_mut
    - Ok
    - as_mut
    - symphonia_core::errors::decode_error
    - i32::read_bool
    - Option<&mut [i32]>::is_some
    - i32::read_bits_leq32_signed
    - decorrelate_mid_side
    - u32::from
    - i32::read_bits_leq32
    - u8::from
    - read_residuals
    - zip
    - Some
    - chunks_exact
    - Option<&mut [i32]>::as_mut
    linkageType: ''
    returnType: Result
    signature: 'fn decode_sce_or_cpe<B: ReadBitsLtr>(config: &MagicCookie,bs: &mut
      B,tail_bits: &mut [u16],out0: &mut [i32],mut out1: Option<&mut [i32]>,) -> Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: leading_zeros
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 608
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 608
    functionName: lg3a
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached:
    - leading_zeros
    linkageType: ''
    returnType: u32
    signature: 'fn lg3a(val: u32) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_unary_ones_capped
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:613,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:617,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:629,1
    - Dst: i32::read_bit
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:633,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-alac/src/lib.rs:646,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 3
    argNames:
    - bs
    - k
    - bps
    argTypes:
    - '&mut B'
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 647
      start: 612
    functionDepth: 16
    functionLinenumber: 612
    functionLinenumberEnd: 647
    functionName: read_rice_code
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - i32::read_unary_ones_capped
    - i32::read_bit
    linkageType: ''
    returnType: Result
    signature: 'fn read_rice_code<B: ReadBitsLtr>(bs: &mut B, k: u32, bps: u32) ->
      Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 655
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 655
    functionName: rice_code_to_signed
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: 'fn rice_code_to_signed(val: u32) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - val
    - num
    argTypes:
    - i32
    - u32
    constantsTouched: []
    func_position:
      end: 661
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 661
    functionName: clip_msbs
    functionSourceFile: /src/symphonia/symphonia-codec-alac/src/lib.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: 'fn clip_msbs(val: i32, num: u32) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [i32]::iter_mut'
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:39,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 2
    argNames:
    - mid
    - side
    argTypes:
    - '&mut [i32]'
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 76
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 76
    functionName: decorrelate_mid_side
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 2
    functionsReached:
    - '&mut [i32]::iter_mut'
    - zip
    linkageType: ''
    returnType: void
    signature: 'fn decorrelate_mid_side(mid: &mut [i32], side: &mut [i32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:15,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:16,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:18,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:21,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:23,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - stream
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 24
      start: 14
    functionDepth: 13
    functionLinenumber: 14
    functionLinenumberEnd: 24
    functionName: read_preamble
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs
    functionUses: 2
    functionsReached:
    - Ok
    - common::u16_to_i32
    - symphonia_core::errors::decode_error
    - Result::read_byte
    linkageType: ''
    returnType: Result
    signature: 'fn read_preamble<B: ReadBytes>(stream: &mut B) -> Result<AdpcmImaBlockStatus>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_preamble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:32,1
    - Dst: common::from_i16_shift
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:33,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:35,1
    - Dst: expand_nibble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:36,1
    - Dst: expand_nibble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:37,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 3
    argNames:
    - stream
    - buffer
    - frames_per_block
    argTypes:
    - '&mut B'
    - '&mut [i32]'
    - usize
    constantsTouched: []
    func_position:
      end: 40
      start: 26
    functionDepth: 14
    functionLinenumber: 26
    functionLinenumberEnd: 40
    functionName: decode_mono
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs
    functionUses: 1
    functionsReached:
    - Result::read_u8
    - common::from_i16_shift
    - expand_nibble
    - Ok
    - read_preamble
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn decode_mono<B: ReadBytes>(stream: &mut B,buffer: &mut
      [i32],frames_per_block: usize,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:48,1
    - Dst: read_preamble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:51,1
    - Dst: read_preamble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:51,1
    - Dst: common::from_i16_shift
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:52,1
    - Dst: common::from_i16_shift
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:53,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:58,1
    - Dst: expand_nibble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:60,1
    - Dst: expand_nibble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:62,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs:64,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 61
    argCount: 3
    argNames:
    - stream
    - buffers
    - frames_per_block
    argTypes:
    - '&mut B'
    - '[&mut [i32]; 2]'
    - usize
    constantsTouched: []
    func_position:
      end: 65
      start: 42
    functionDepth: 14
    functionLinenumber: 42
    functionLinenumberEnd: 65
    functionName: decode_stereo
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs
    functionUses: 1
    functionsReached:
    - Result::read_u8
    - common::from_i16_shift
    - expand_nibble
    - Ok
    - read_preamble
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn decode_stereo<B: ReadBytes>(stream: &mut B,buffers:
      [&mut [i32]; 2],frames_per_block: usize,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::get_nibble
      Src: /src/symphonia/symphonia-codec-adpcm/src/common_ima.rs:39,1
    - Dst: symphonia_core::util::clamp::clamp_i16
      Src: /src/symphonia/symphonia-codec-adpcm/src/common_ima.rs:45,1
    - Dst: clamp
      Src: /src/symphonia/symphonia-codec-adpcm/src/common_ima.rs:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - byte
    - nibble
    argTypes:
    - u8
    - Nibble
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: AdpcmImaBlockStatus::expand_nibble
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/common_ima.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::util::clamp::clamp_i16
    - i32::get_nibble
    - clamp
    linkageType: ''
    returnType: i32
    signature: 'pub(crate) fn expand_nibble(&mut self, byte: u8, nibble: Nibble) ->
      i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - byte
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 20
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 20
    functionName: Nibble::get_nibble
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/common.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn get_nibble(&self, byte: u8) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: u16_to_i32
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/common.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: from_i16_shift
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/common.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - codec_id
    argTypes:
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: is_supported_adpcm_codec
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'fn is_supported_adpcm_codec(codec_id: AudioCodecId) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: InnerDecoder::decode_mono_fn
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: impl Fn(&mut B, &mut [i32], usize) -> Result
    signature: 'fn decode_mono_fn<B: ReadBytes>(&self) -> impl Fn(&mut B, &mut [i32],
      usize) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 66
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionName: InnerDecoder::decode_stereo_fn
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: impl Fn(&mut B, [&mut [i32]; 2], usize) -> Result
    signature: 'fn decode_stereo_fn<B: ReadBytes>(&self,) -> impl Fn(&mut B, [&mut
      [i32]; 2], usize) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_supported_adpcm_codec
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:79,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:80,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:85,1
    - Dst: is_none_or
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:88,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:89,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:94,1
    - Dst: Option::count
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:98,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:99,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:102,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:102,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:105,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:112,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:115,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:116,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:118,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 53
    argCount: 2
    argNames:
    - params
    - _opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 120
      start: 77
    functionDepth: 10
    functionLinenumber: 77
    functionLinenumberEnd: 120
    functionName: AdpcmDecoder::try_new
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - is_supported_adpcm_codec
    - Option::clone
    - Ok
    - symphonia_core::errors::unsupported_error
    - AudioBuffer::new
    - Option::count
    - is_none_or
    - AudioSpec::new
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(params: &AudioCodecParameters, _opts: &AudioDecoderOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::as_buf_reader
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:123,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:127,1
    - Dst: Result::block_dur
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:130,1
    - Dst: Duration::get
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:130,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:132,1
    - Dst: render_uninit
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:133,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:133,1
    - Dst: spec
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:135,1
    - Dst: channels
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:135,1
    - Dst: count
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:135,1
    - Dst: plane_mut
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:138,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:140,1
    - Dst: decode_mono_fn
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:142,1
    - Dst: decode_mono
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:147,1
    - Dst: plane_pair_mut
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:151,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:153,1
    - Dst: decode_stereo_fn
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:155,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:160,1
    - Dst: decode_stereo
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:161,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:167,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 86
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 168
      start: 122
    functionDepth: 12
    functionLinenumber: 122
    functionLinenumberEnd: 168
    functionName: AdpcmDecoder::decode_inner
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 1
    functionsReached:
    - Duration::get
    - spec
    - channels
    - decode_mono
    - plane_pair_mut
    - Result::block_dur
    - Ok
    - decode_stereo
    - render_uninit
    - Some
    - Result::as_buf_reader
    - decode_mono_fn
    - plane_mut
    - clear
    - symphonia_core::errors::decode_error
    - decode_stereo_fn
    - count
    - clone
    linkageType: ''
    returnType: Result
    signature: 'fn decode_inner(&mut self, packet: &PacketRef<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: AdpcmDecoder::reset
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::supported_codecs
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:178,1
    - Dst: '&''static [SupportedAudioCodec]::iter'
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:178,1
    - Dst: find
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:178,1
    - Dst: GASubbandInfo::expect
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 183
      start: 176
    functionDepth: 11
    functionLinenumber: 176
    functionLinenumberEnd: 183
    functionName: AdpcmDecoder::codec_info
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - '&''static [SupportedAudioCodec]::iter'
    - find
    - Self::supported_codecs
    - GASubbandInfo::expect
    linkageType: ''
    returnType: '&CodecInfo'
    signature: fn codec_info(&self) -> &CodecInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 187
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionName: AdpcmDecoder::codec_params
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioCodecParameters'
    signature: fn codec_params(&self) -> &AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AdpcmDecoder::decode_inner
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:190,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:191,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:192,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:195,1
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:195,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 13
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: AdpcmDecoder::decode_ref
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    - AdpcmDecoder::decode_inner
    - Err
    - Ok
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ref(&mut self, packet: &PacketRef<''_>) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 201
      start: 199
    functionDepth: 15
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionName: AdpcmDecoder::finalize
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: FinalizeResult
    signature: fn finalize(&mut self) -> FinalizeResult
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 205
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionName: AdpcmDecoder::last_decoded
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn last_decoded(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:216,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:216,1
    - Dst: AdpcmDecoder::try_new
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 217
      start: 209
    functionDepth: 10
    functionLinenumber: 209
    functionLinenumberEnd: 217
    functionName: AdpcmDecoder::try_registry_new
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - AdpcmDecoder::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_registry_new(params: &AudioCodecParameters,opts: &AudioDecoderOptions,)
      -> Result<Box<dyn AudioDecoder>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:221,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:222,1
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-adpcm/src/lib.rs:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 225
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 225
    functionName: AdpcmDecoder::supported_codecs
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_audio_codec
    linkageType: ''
    returnType: '&''static [SupportedAudioCodec]'
    signature: fn supported_codecs() -> &'static [SupportedAudioCodec]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:3,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 31
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 31
    functionName: check_block_predictor
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs
    functionUses: 2
    functionsReached:
    - symphonia_core::errors::unsupported_error
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - nibble
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: signed_nibble
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: i8
    signature: 'pub fn signed_nibble(nibble: u8) -> i8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:48,1
    - Dst: check_block_predictor
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:49,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:53,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:54,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:55,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - stream
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 13
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: AdpcmMsBlockStatus::read_mono_preamble
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs
    functionUses: 0
    functionsReached:
    - Ok
    - common::u16_to_i32
    - check_block_predictor
    - Result::read_byte
    linkageType: ''
    returnType: Result
    signature: 'fn read_mono_preamble<B: ReadBytes>(stream: &mut B) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:61,1
    - Dst: check_block_predictor
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:62,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:63,1
    - Dst: check_block_predictor
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:64,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:65,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:66,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:67,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:68,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:69,1
    - Dst: common::u16_to_i32
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:70,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - stream
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 87
      start: 60
    functionDepth: 13
    functionLinenumber: 60
    functionLinenumberEnd: 87
    functionName: AdpcmMsBlockStatus::read_stereo_preamble
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs
    functionUses: 0
    functionsReached:
    - Ok
    - common::u16_to_i32
    - check_block_predictor
    - Result::read_byte
    linkageType: ''
    returnType: Result
    signature: 'fn read_stereo_preamble<B: ReadBytes>(stream: &mut B) -> Result<(Self,
      Self)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::get_nibble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:90,1
    - Dst: signed_nibble
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:91,1
    - Dst: symphonia_core::util::clamp::clamp_i16
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:95,1
    - Dst: max
      Src: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 42
    argCount: 2
    argNames:
    - byte
    - nibble
    argTypes:
    - u8
    - Nibble
    constantsTouched: []
    func_position:
      end: 99
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 99
    functionName: AdpcmMsBlockStatus::expand_nibble
    functionSourceFile: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs
    functionUses: 0
    functionsReached:
    - signed_nibble
    - i32::get_nibble
    - symphonia_core::util::clamp::clamp_i16
    - max
    linkageType: ''
    returnType: i32
    signature: 'fn expand_nibble(&mut self, byte: u8, nibble: Nibble) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::into'
      Src: /src/symphonia/symphonia-core/src/packet.rs:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - track_id
    - pts
    - dur
    - data
    argTypes:
    - u32
    - Timestamp
    - Duration
    - impl Into<Box<[u8]>>
    constantsTouched: []
    func_position:
      end: 89
      start: 79
    functionDepth: 14
    functionLinenumber: 79
    functionLinenumberEnd: 89
    functionName: Packet::new
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 7
    functionsReached:
    - '&''static [ProbeFormatData]::into'
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(track_id: u32, pts: Timestamp, dur: Duration, data: impl
      Into<Box<[u8]>>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-core/src/packet.rs:97,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-core/src/packet.rs:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: Packet::block_dur
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - saturating_add
    linkageType: ''
    returnType: Duration
    signature: pub const fn block_dur(&self) -> Duration
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: Packet::as_buf_reader
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - BufReader::new
    linkageType: ''
    returnType: BufReader
    signature: pub fn as_buf_reader(&self) -> BufReader<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 118
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 118
    functionName: Packet::as_packet_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PacketRef
    signature: pub fn as_packet_ref(&self) -> PacketRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::debug_struct
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    - Dst: finish
      Src: /src/symphonia/symphonia-core/src/packet.rs:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 31
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 133
      start: 122
    functionDepth: 14
    functionLinenumber: 122
    functionLinenumberEnd: 133
    functionName: Packet::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - field
    - Result::debug_struct
    - finish
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - track_id
    - pts
    - dur
    - data
    argTypes:
    - u32
    - Timestamp
    - Duration
    - '&''a [u8]'
    constantsTouched: []
    func_position:
      end: 188
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 188
    functionName: PacketRef::new
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(track_id: u32, pts: Timestamp, dur: Duration, data: &''a
      [u8]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-core/src/packet.rs:193,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-core/src/packet.rs:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: PacketRef::block_dur
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - saturating_add
    linkageType: ''
    returnType: Duration
    signature: pub const fn block_dur(&self) -> Duration
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: PacketRef::as_buf_reader
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - BufReader::new
    linkageType: ''
    returnType: BufReader
    signature: pub fn as_buf_reader(&self) -> BufReader<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::debug_struct
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: field
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    - Dst: finish
      Src: /src/symphonia/symphonia-core/src/packet.rs:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 31
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 215
      start: 204
    functionDepth: 14
    functionLinenumber: 204
    functionLinenumberEnd: 215
    functionName: PacketRef::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - field
    - Result::debug_struct
    - finish
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::as_packet_ref
      Src: /src/symphonia/symphonia-core/src/packet.rs:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&''a Packet'
    constantsTouched: []
    func_position:
      end: 221
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionName: PacketRef::from
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - Result::as_packet_ref
    linkageType: ''
    returnType: Self
    signature: 'fn from(packet: &''a Packet) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: PacketBuilder::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: Self::track_id
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: pts
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:424,1
    - Dst: dts
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:425,1
    - Dst: dur
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:426,1
    - Dst: data_by_ref
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: trim_start
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:428,1
    - Dst: trim_end
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:429,1
    - Dst: build_packet_ref
      Src: /src/symphonia/symphonia-core/src/packet.rs:422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 442
      start: 419
    functionDepth: 10
    functionLinenumber: 419
    functionLinenumberEnd: 442
    functionName: tests::verify_packet_ref_creation
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - trim_end
    - dts
    - trim_start
    - build_packet_ref
    - dur
    - data_by_ref
    - Self::track_id
    - Duration::new
    - pts
    - Timestamp::new
    - PacketBuilder::new
    linkageType: ''
    returnType: void
    signature: fn verify_packet_ref_creation()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: PacketBuilder::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: Self::track_id
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: pts
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:450,1
    - Dst: dur
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:451,1
    - Dst: data
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: dts
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:453,1
    - Dst: trim_start
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:454,1
    - Dst: trim_end
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-core/src/packet.rs:455,1
    - Dst: build
      Src: /src/symphonia/symphonia-core/src/packet.rs:448,1
    - Dst: as_packet_ref
      Src: /src/symphonia/symphonia-core/src/packet.rs:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 467
      start: 445
    functionDepth: 10
    functionLinenumber: 445
    functionLinenumberEnd: 467
    functionName: tests::verify_packet_to_packet_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/packet.rs
    functionUses: 0
    functionsReached:
    - trim_end
    - dts
    - build
    - trim_start
    - as_packet_ref
    - dur
    - data
    - Self::track_id
    - Duration::new
    - pts
    - Timestamp::new
    - PacketBuilder::new
    linkageType: ''
    returnType: void
    signature: fn verify_packet_to_packet_ref()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/common.rs:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - '[u8; 4]'
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: FourCc::new
    functionSourceFile: /src/symphonia/symphonia-core/src/common.rs
    functionUses: 0
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub const fn new(val: [u8; 4]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '[u8; 4]::is_ascii'
      Src: /src/symphonia/symphonia-core/src/common.rs:33,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/common.rs:33,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/common.rs:33,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - val
    argTypes:
    - '[u8; 4]'
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: FourCc::try_new
    functionSourceFile: /src/symphonia/symphonia-core/src/common.rs
    functionUses: 1
    functionsReached:
    - Self
    - Some
    - '[u8; 4]::is_ascii'
    linkageType: ''
    returnType: Option
    signature: 'pub const fn try_new(val: [u8; 4]) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: FourCc::get
    functionSourceFile: /src/symphonia/symphonia-core/src/common.rs
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: '[u8; 4]'
    signature: pub const fn get(&self) -> [u8; 4]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::str::from_utf8
      Src: /src/symphonia/symphonia-core/src/common.rs:44,1
    - Dst: Result::write_str
      Src: /src/symphonia/symphonia-core/src/common.rs:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: FourCc::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/common.rs
    functionUses: 0
    functionsReached:
    - std::str::from_utf8
    - Result::write_str
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/common.rs:88,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/common.rs:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - default
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: Limit::limit_or_default
    functionSourceFile: /src/symphonia/symphonia-core/src/common.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub fn limit_or_default(&self, default: usize) -> Option<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: SeekErrorKind::as_str
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&''static str'
    signature: fn as_str(&self) -> &'static str
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::fmt
      Src: /src/symphonia/symphonia-core/src/errors.rs:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 79
      start: 60
    functionDepth: 15
    functionLinenumber: 60
    functionLinenumberEnd: 79
    functionName: Error::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 0
    functionsReached:
    - Result::fmt
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/errors.rs:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: Error::cause
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: fn cause(&self) -> Option<&dyn error::Error>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/errors.rs:110,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-core/src/errors.rs:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - kind
    argTypes:
    - SeekErrorKind
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: seek_error
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 15
    functionsReached:
    - Error::SeekError
    - Err
    linkageType: ''
    returnType: Result
    signature: 'pub fn seek_error<T>(kind: SeekErrorKind) -> Result<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/errors.rs:120,1
    - Dst: Error::LimitError
      Src: /src/symphonia/symphonia-core/src/errors.rs:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - constraint
    argTypes:
    - '&''static str'
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: limit_error
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 0
    functionsReached:
    - Error::LimitError
    - Err
    linkageType: ''
    returnType: Result
    signature: 'pub fn limit_error<T>(constraint: &''static str) -> Result<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/errors.rs:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: reset_error
    functionSourceFile: /src/symphonia/symphonia-core/src/errors.rs
    functionUses: 1
    functionsReached:
    - Err
    linkageType: ''
    returnType: Result
    signature: pub fn reset_error<T>() -> Result<T>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ts
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: Timestamp::new
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 9
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub const fn new(ts: i64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: Timestamp::get
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: i64
    signature: pub const fn get(self) -> i64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: Timestamp::is_zero
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub const fn is_zero(self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_negative
      Src: /src/symphonia/symphonia-core/src/units.rs:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: Timestamp::is_negative
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 3
    functionsReached:
    - is_negative
    linkageType: ''
    returnType: bool
    signature: pub const fn is_negative(self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_positive
      Src: /src/symphonia/symphonia-core/src/units.rs:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: Timestamp::is_positive
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - is_positive
    linkageType: ''
    returnType: bool
    signature: pub const fn is_positive(self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_add_unsigned
      Src: /src/symphonia/symphonia-core/src/units.rs:74,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:75,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - dur
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 10
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: Timestamp::checked_add
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached:
    - Self
    - checked_add_unsigned
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_add(self, dur: Duration) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub_unsigned
      Src: /src/symphonia/symphonia-core/src/units.rs:83,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:84,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - dur
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 10
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: Timestamp::checked_sub
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - Some
    - checked_sub_unsigned
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_sub(self, dur: Duration) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:93,1
    - Dst: saturating_add_unsigned
      Src: /src/symphonia/symphonia-core/src/units.rs:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dur
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: Timestamp::saturating_add
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - saturating_add_unsigned
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_add(self, dur: Duration) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:100,1
    - Dst: saturating_sub_unsigned
      Src: /src/symphonia/symphonia-core/src/units.rs:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dur
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: Timestamp::saturating_sub
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached:
    - Self
    - saturating_sub_unsigned
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_sub(self, dur: Duration) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:107,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:108,1
    - Dst: Delta
      Src: /src/symphonia/symphonia-core/src/units.rs:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 111
      start: 106
    functionDepth: 11
    functionLinenumber: 106
    functionLinenumberEnd: 111
    functionName: Timestamp::checked_delta
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - checked_sub
    - Delta
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_delta(self, other: Self) -> Option<Delta>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Delta
      Src: /src/symphonia/symphonia-core/src/units.rs:117,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: Timestamp::saturating_delta
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - saturating_sub
    - Delta
    linkageType: ''
    returnType: Delta
    signature: 'pub const fn saturating_delta(self, other: Self) -> Delta'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:123,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:124,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - delta
    argTypes:
    - Delta
    constantsTouched: []
    func_position:
      end: 127
      start: 122
    functionDepth: 10
    functionLinenumber: 122
    functionLinenumberEnd: 127
    functionName: Timestamp::checked_add_delta
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - checked_add
    - Some
    - Self
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_add_delta(self, delta: Delta) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:132,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:133,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - delta
    argTypes:
    - Delta
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 11
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: Timestamp::checked_sub_delta
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - checked_sub
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_sub_delta(self, delta: Delta) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:142,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-core/src/units.rs:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - delta
    argTypes:
    - Delta
    constantsTouched: []
    func_position:
      end: 143
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionName: Timestamp::saturating_add_delta
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - saturating_add
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_add_delta(self, delta: Delta) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:149,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - delta
    argTypes:
    - Delta
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: Timestamp::saturating_sub_delta
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - saturating_sub
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_sub_delta(self, delta: Delta) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration
      Src: /src/symphonia/symphonia-core/src/units.rs:155,1
    - Dst: abs_diff
      Src: /src/symphonia/symphonia-core/src/units.rs:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 156
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionName: Timestamp::abs_delta
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - abs_diff
    - Duration
    linkageType: ''
    returnType: Duration
    signature: 'pub const fn abs_delta(self, other: Self) -> Duration'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:162,1
    - Dst: is_negative
      Src: /src/symphonia/symphonia-core/src/units.rs:163,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:163,1
    - Dst: Duration
      Src: /src/symphonia/symphonia-core/src/units.rs:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 166
      start: 161
    functionDepth: 11
    functionLinenumber: 161
    functionLinenumberEnd: 166
    functionName: Timestamp::duration_from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - is_negative
    - checked_sub
    - Duration
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn duration_from(self, other: Self) -> Option<Duration>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:172,1
    - Dst: is_negative
      Src: /src/symphonia/symphonia-core/src/units.rs:173,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:173,1
    - Dst: Duration
      Src: /src/symphonia/symphonia-core/src/units.rs:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 176
      start: 171
    functionDepth: 11
    functionLinenumber: 171
    functionLinenumberEnd: 176
    functionName: Timestamp::duration_to
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - is_negative
    - checked_sub
    - Duration
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn duration_to(self, other: Self) -> Option<Duration>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::is_zero
      Src: /src/symphonia/symphonia-core/src/units.rs:183,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:187,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - align_to
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: Timestamp::align_towards_zero
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - Self
    - Some
    - Duration::is_zero
    linkageType: ''
    returnType: Option
    signature: 'pub const fn align_towards_zero(self, align_to: Duration) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::is_zero
      Src: /src/symphonia/symphonia-core/src/units.rs:196,1
    - Dst: div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:202,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:202,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:203,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:203,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - align_to
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 206
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 206
    functionName: Timestamp::align_down
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Some
    - Duration::is_zero
    - div_euclid
    - checked_mul
    - Self
    linkageType: ''
    returnType: Option
    signature: 'pub const fn align_down(self, align_to: Duration) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:256,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: Timestamp::from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 12
    functionsReached:
    - Self
    - i64::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: u8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: try_into
      Src: /src/symphonia/symphonia-core/src/units.rs:219,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/units.rs:220,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 221
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionName: Timestamp::try_from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - try_into
    - Ok
    - Self
    linkageType: ''
    returnType: Result
    signature: 'fn try_from(value: u64) -> Result<Self, Self::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::fmt
      Src: /src/symphonia/symphonia-core/src/units.rs:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 263
      start: 261
    functionDepth: 15
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionName: Timestamp::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - std::fmt
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dur
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 275
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionName: Duration::new
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 9
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub const fn new(dur: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: Duration::get
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: pub const fn get(self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 287
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionName: Duration::is_zero
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub const fn is_zero(self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:292,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:293,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 296
      start: 291
    functionDepth: 10
    functionLinenumber: 291
    functionLinenumberEnd: 296
    functionName: Duration::checked_add
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - checked_add
    - Some
    - Self
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_add(self, other: Self) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_div
      Src: /src/symphonia/symphonia-core/src/units.rs:301,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:302,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:302,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 305
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 305
    functionName: Duration::checked_div
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - checked_div
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_div(self, rhs: u64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:311,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:312,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 315
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 315
    functionName: Duration::checked_div_euclid
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - checked_div_euclid
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_div_euclid(self, rhs: u64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:320,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:321,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 324
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 324
    functionName: Duration::checked_mul
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - Some
    - checked_mul
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_mul(self, rhs: u64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:329,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:330,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 333
      start: 328
    functionDepth: 11
    functionLinenumber: 328
    functionLinenumberEnd: 333
    functionName: Duration::checked_sub
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - checked_sub
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn checked_sub(self, other: Self) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:339,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-core/src/units.rs:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 340
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 340
    functionName: Duration::saturating_add
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - saturating_add
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_add(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:350,1
    - Dst: saturating_div
      Src: /src/symphonia/symphonia-core/src/units.rs:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 351
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 351
    functionName: Duration::saturating_div
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - saturating_div
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_div(self, rhs: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:357,1
    - Dst: saturating_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 358
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 358
    functionName: Duration::saturating_mul
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - saturating_mul
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_mul(self, rhs: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:364,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 365
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionName: Duration::saturating_sub
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - saturating_sub
    linkageType: ''
    returnType: Self
    signature: 'pub const fn saturating_sub(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::is_zero
      Src: /src/symphonia/symphonia-core/src/units.rs:372,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:376,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - align_to
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 377
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 377
    functionName: Duration::align_towards_zero
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - Self
    - Some
    - Self::is_zero
    linkageType: ''
    returnType: Option
    signature: 'pub const fn align_towards_zero(self, align_to: Self) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::align_towards_zero
      Src: /src/symphonia/symphonia-core/src/units.rs:385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - align_to
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 386
      start: 384
    functionDepth: 2
    functionLinenumber: 384
    functionLinenumberEnd: 386
    functionName: Duration::align_down
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Duration::align_towards_zero
    linkageType: ''
    returnType: Option
    signature: 'pub const fn align_down(self, align_to: Self) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: EbmlError::checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - from
    argTypes:
    - Timestamp
    constantsTouched: []
    func_position:
      end: 392
      start: 390
    functionDepth: 10
    functionLinenumber: 390
    functionLinenumberEnd: 392
    functionName: Duration::timestamp_from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - EbmlError::checked_add
    linkageType: ''
    returnType: Option
    signature: 'pub const fn timestamp_from(self, from: Timestamp) -> Option<Timestamp>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:442,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 443
      start: 441
    functionDepth: 1
    functionLinenumber: 441
    functionLinenumberEnd: 443
    functionName: Duration::from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 22
    functionsReached:
    - Self
    - u64::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: u8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: try_into
      Src: /src/symphonia/symphonia-core/src/units.rs:450,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/units.rs:451,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 452
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 452
    functionName: Duration::try_from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - try_into
    - Ok
    - Self
    linkageType: ''
    returnType: Result
    signature: 'fn try_from(value: i8) -> Result<Self, Self::Error>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::fmt
      Src: /src/symphonia/symphonia-core/src/units.rs:457,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 458
      start: 456
    functionDepth: 15
    functionLinenumber: 456
    functionLinenumberEnd: 458
    functionName: Duration::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - std::fmt
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 473
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionName: Delta::get
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i64
    signature: pub const fn get(self) -> i64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 479
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 479
    functionName: Delta::is_zero
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub const fn is_zero(self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_negative
      Src: /src/symphonia/symphonia-core/src/units.rs:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 2
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: Delta::is_negative
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - is_negative
    linkageType: ''
    returnType: bool
    signature: pub const fn is_negative(self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_positive
      Src: /src/symphonia/symphonia-core/src/units.rs:490,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 491
      start: 489
    functionDepth: 2
    functionLinenumber: 489
    functionLinenumberEnd: 491
    functionName: Delta::is_positive
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - is_positive
    linkageType: ''
    returnType: bool
    signature: pub const fn is_positive(self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_abs
      Src: /src/symphonia/symphonia-core/src/units.rs:496,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:497,1
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/units.rs:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 500
      start: 495
    functionDepth: 1
    functionLinenumber: 495
    functionLinenumberEnd: 500
    functionName: Delta::checked_abs
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self
    - Some
    - checked_abs
    linkageType: ''
    returnType: Option
    signature: pub const fn checked_abs(self) -> Option<Self>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unsigned_abs
      Src: /src/symphonia/symphonia-core/src/units.rs:505,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 506
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 506
    functionName: Delta::unsigned_abs
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - unsigned_abs
    linkageType: ''
    returnType: u64
    signature: pub const fn unsigned_abs(self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::fmt
      Src: /src/symphonia/symphonia-core/src/units.rs:511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 512
      start: 510
    functionDepth: 15
    functionLinenumber: 510
    functionLinenumberEnd: 512
    functionName: Delta::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - std::fmt
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:553,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - ns
    argTypes:
    - i64
    - u32
    constantsTouched: []
    func_position:
      end: 556
      start: 551
    functionDepth: 0
    functionLinenumber: 551
    functionLinenumberEnd: 556
    functionName: Time::try_new
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub const fn try_new(s: i64, ns: u32) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i128::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:562,1
    - Dst: i128::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:563,1
    - Dst: Option::try_into
      Src: /src/symphonia/symphonia-core/src/units.rs:564,1
    - Dst: ok
      Src: /src/symphonia/symphonia-core/src/units.rs:564,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/units.rs:564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - total_ns
    argTypes:
    - i128
    constantsTouched: []
    func_position:
      end: 565
      start: 561
    functionDepth: 11
    functionLinenumber: 561
    functionLinenumberEnd: 565
    functionName: Time::try_from_nanos_i128
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - Option::try_into
    - map
    - ok
    - i128::rem_euclid
    - i128::div_euclid
    linkageType: ''
    returnType: Option
    signature: 'pub fn try_from_nanos_i128(total_ns: i128) -> Option<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u128::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:571,1
    - Dst: u128::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:572,1
    - Dst: Option::try_into
      Src: /src/symphonia/symphonia-core/src/units.rs:573,1
    - Dst: ok
      Src: /src/symphonia/symphonia-core/src/units.rs:573,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/units.rs:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - total_ns
    argTypes:
    - u128
    constantsTouched: []
    func_position:
      end: 574
      start: 570
    functionDepth: 11
    functionLinenumber: 570
    functionLinenumberEnd: 574
    functionName: Time::try_from_nanos_u128
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Option::try_into
    - map
    - u128::rem_euclid
    - ok
    - u128::div_euclid
    linkageType: ''
    returnType: Option
    signature: 'pub fn try_from_nanos_u128(total_ns: u128) -> Option<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f64::is_finite
      Src: /src/symphonia/symphonia-core/src/units.rs:582,1
    - Dst: f64::floor
      Src: /src/symphonia/symphonia-core/src/units.rs:586,1
    - Dst: round
      Src: /src/symphonia/symphonia-core/src/units.rs:593,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:596,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-core/src/units.rs:599,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 1
    argNames:
    - total_secs
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 604
      start: 580
    functionDepth: 17
    functionLinenumber: 580
    functionLinenumberEnd: 604
    functionName: Time::try_from_secs_f64
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - f64::floor
    - saturating_add
    - Some
    - round
    - f64::is_finite
    linkageType: ''
    returnType: Option
    signature: 'pub fn try_from_secs_f64(total_secs: f64) -> Option<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:608,1
    - Dst: i64::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - total_ns
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 611
      start: 607
    functionDepth: 2
    functionLinenumber: 607
    functionLinenumberEnd: 611
    functionName: Time::from_nanos
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - i64::div_euclid
    - i64::rem_euclid
    linkageType: ''
    returnType: Time
    signature: 'pub const fn from_nanos(total_ns: i64) -> Time'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:615,1
    - Dst: u64::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - total_ns
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 618
      start: 614
    functionDepth: 2
    functionLinenumber: 614
    functionLinenumberEnd: 618
    functionName: Time::from_nanos_u64
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - u64::rem_euclid
    - u64::div_euclid
    linkageType: ''
    returnType: Time
    signature: 'pub const fn from_nanos_u64(total_ns: u64) -> Time'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:622,1
    - Dst: i64::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - total_us
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 625
      start: 621
    functionDepth: 2
    functionLinenumber: 621
    functionLinenumberEnd: 625
    functionName: Time::from_micros
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - i64::div_euclid
    - i64::rem_euclid
    linkageType: ''
    returnType: Time
    signature: 'pub const fn from_micros(total_us: i64) -> Time'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:629,1
    - Dst: u64::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:630,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - total_us
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 632
      start: 628
    functionDepth: 2
    functionLinenumber: 628
    functionLinenumberEnd: 632
    functionName: Time::from_micros_u64
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - u64::rem_euclid
    - u64::div_euclid
    linkageType: ''
    returnType: Time
    signature: 'pub const fn from_micros_u64(total_us: u64) -> Time'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:636,1
    - Dst: i64::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - total_ms
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 639
      start: 635
    functionDepth: 2
    functionLinenumber: 635
    functionLinenumberEnd: 639
    functionName: Time::from_millis
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - i64::div_euclid
    - i64::rem_euclid
    linkageType: ''
    returnType: Time
    signature: 'pub const fn from_millis(total_ms: i64) -> Time'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::div_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:643,1
    - Dst: u64::rem_euclid
      Src: /src/symphonia/symphonia-core/src/units.rs:644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - total_ms
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 646
      start: 642
    functionDepth: 2
    functionLinenumber: 642
    functionLinenumberEnd: 646
    functionName: Time::from_millis_u64
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - u64::rem_euclid
    - u64::div_euclid
    linkageType: ''
    returnType: Time
    signature: 'pub const fn from_millis_u64(total_ms: u64) -> Time'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:658,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:660,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - ns
    argTypes:
    - u8
    - u32
    constantsTouched: []
    func_position:
      end: 661
      start: 652
    functionDepth: 1
    functionLinenumber: 652
    functionLinenumberEnd: 661
    functionName: Time::from_ss
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - i64::from
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub fn from_ss(s: u8, ns: u32) -> Option<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:673,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:673,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:675,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - m
    - s
    - ns
    argTypes:
    - u8
    - u8
    - u32
    constantsTouched: []
    func_position:
      end: 676
      start: 667
    functionDepth: 1
    functionLinenumber: 667
    functionLinenumberEnd: 676
    functionName: Time::from_mmss
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - i64::from
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub fn from_mmss(m: u8, s: u8, ns: u32) -> Option<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:689,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:689,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:689,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:691,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 4
    argNames:
    - h
    - m
    - s
    - ns
    argTypes:
    - u32
    - u8
    - u8
    - u32
    constantsTouched: []
    func_position:
      end: 692
      start: 682
    functionDepth: 1
    functionLinenumber: 682
    functionLinenumberEnd: 692
    functionName: Time::from_hhmmss
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - i64::from
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub fn from_hhmmss(h: u32, m: u8, s: u8, ns: u32) -> Option<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 698
      start: 696
    functionDepth: 0
    functionLinenumber: 696
    functionLinenumberEnd: 698
    functionName: Time::is_zero
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub const fn is_zero(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_positive
      Src: /src/symphonia/symphonia-core/src/units.rs:703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 704
      start: 702
    functionDepth: 2
    functionLinenumber: 702
    functionLinenumberEnd: 704
    functionName: Time::is_positive
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - is_positive
    linkageType: ''
    returnType: bool
    signature: pub const fn is_positive(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_negative
      Src: /src/symphonia/symphonia-core/src/units.rs:709,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 710
      start: 708
    functionDepth: 2
    functionLinenumber: 708
    functionLinenumberEnd: 710
    functionName: Time::is_negative
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - is_negative
    linkageType: ''
    returnType: bool
    signature: pub const fn is_negative(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:715,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 716
      start: 714
    functionDepth: 1
    functionLinenumber: 714
    functionLinenumberEnd: 716
    functionName: Time::as_nanos
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached:
    - i128::from
    linkageType: ''
    returnType: i128
    signature: pub fn as_nanos(&self) -> i128
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::as_nanos
      Src: /src/symphonia/symphonia-core/src/units.rs:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 722
      start: 720
    functionDepth: 2
    functionLinenumber: 720
    functionLinenumberEnd: 722
    functionName: Time::as_micros
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::as_nanos
    linkageType: ''
    returnType: i128
    signature: pub fn as_micros(&self) -> i128
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::as_nanos
      Src: /src/symphonia/symphonia-core/src/units.rs:727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 728
      start: 726
    functionDepth: 2
    functionLinenumber: 726
    functionLinenumberEnd: 728
    functionName: Time::as_millis
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::as_nanos
    linkageType: ''
    returnType: i128
    signature: pub fn as_millis(&self) -> i128
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 734
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionName: Time::as_secs
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: i64
    signature: pub fn as_secs(&self) -> i64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::as_secs
      Src: /src/symphonia/symphonia-core/src/units.rs:739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 740
      start: 738
    functionDepth: 1
    functionLinenumber: 738
    functionLinenumberEnd: 740
    functionName: Time::as_mins
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::as_secs
    linkageType: ''
    returnType: i64
    signature: pub fn as_mins(&self) -> i64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::as_secs
      Src: /src/symphonia/symphonia-core/src/units.rs:745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 746
      start: 744
    functionDepth: 1
    functionLinenumber: 744
    functionLinenumberEnd: 746
    functionName: Time::as_hours
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::as_secs
    linkageType: ''
    returnType: i64
    signature: pub fn as_hours(&self) -> i64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 752
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 752
    functionName: Time::as_secs_f64
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: f64
    signature: pub fn as_secs_f64(&self) -> f64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 775
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 775
    functionName: Time::parts
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: (i64, u32)
    signature: pub fn parts(&self) -> (i64, u32)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:780,1
    - Dst: checked_neg
      Src: /src/symphonia/symphonia-core/src/units.rs:780,1
    - Dst: checked_neg
      Src: /src/symphonia/symphonia-core/src/units.rs:783,1
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:783,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:784,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 786
      start: 778
    functionDepth: 11
    functionLinenumber: 778
    functionLinenumberEnd: 786
    functionName: Time::checked_neg
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - checked_neg
    - Some
    - checked_sub
    linkageType: ''
    returnType: Option
    signature: pub fn checked_neg(self) -> Option<Self>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:789,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:792,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:796,1
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:799,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:805,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - delta_secs
    - delta_nanos
    argTypes:
    - i64
    - i64
    constantsTouched: []
    func_position:
      end: 806
      start: 788
    functionDepth: 10
    functionLinenumber: 788
    functionLinenumberEnd: 806
    functionName: Time::checked_add
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 6
    functionsReached:
    - checked_add
    - i64::from
    - checked_sub
    - Some
    linkageType: ''
    returnType: Option
    signature: 'fn checked_add(self, delta_secs: i64, delta_nanos: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:812,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - nanos
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 813
      start: 809
    functionDepth: 11
    functionLinenumber: 809
    functionLinenumberEnd: 813
    functionName: Time::checked_add_nanos
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_add
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add_nanos(self, nanos: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - micros
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 820
      start: 816
    functionDepth: 11
    functionLinenumber: 816
    functionLinenumberEnd: 820
    functionName: Time::checked_add_micros
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_add
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add_micros(self, micros: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - millis
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 827
      start: 823
    functionDepth: 11
    functionLinenumber: 823
    functionLinenumberEnd: 827
    functionName: Time::checked_add_millis
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_add
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add_millis(self, millis: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - secs
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 832
      start: 830
    functionDepth: 11
    functionLinenumber: 830
    functionLinenumberEnd: 832
    functionName: Time::checked_add_secs
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_add
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add_secs(self, secs: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:836,1
    - Dst: Time::checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - mins
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 11
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: Time::checked_add_mins
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - i64::checked_mul
    - Time::checked_add
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add_mins(self, mins: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:842,1
    - Dst: Time::checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - hours
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 11
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: Time::checked_add_hours
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - i64::checked_mul
    - Time::checked_add
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_add_hours(self, hours: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:847,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:850,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:854,1
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:857,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:863,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - delta_secs
    - delta_nanos
    argTypes:
    - i64
    - i64
    constantsTouched: []
    func_position:
      end: 864
      start: 846
    functionDepth: 11
    functionLinenumber: 846
    functionLinenumberEnd: 864
    functionName: Time::checked_sub
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 6
    functionsReached:
    - i64::from
    - checked_sub
    - Some
    - checked_add
    linkageType: ''
    returnType: Option
    signature: 'fn checked_sub(self, delta_secs: i64, delta_nanos: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:871,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - nanos
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 872
      start: 868
    functionDepth: 12
    functionLinenumber: 868
    functionLinenumberEnd: 872
    functionName: Time::checked_sub_nanos
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_sub
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_sub_nanos(self, nanos: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - micros
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 880
      start: 876
    functionDepth: 12
    functionLinenumber: 876
    functionLinenumberEnd: 880
    functionName: Time::checked_sub_micros
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_sub
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_sub_micros(self, micros: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:887,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - millis
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 888
      start: 884
    functionDepth: 12
    functionLinenumber: 884
    functionLinenumberEnd: 888
    functionName: Time::checked_sub_millis
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_sub
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_sub_millis(self, millis: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:892,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - secs
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 893
      start: 891
    functionDepth: 12
    functionLinenumber: 891
    functionLinenumberEnd: 893
    functionName: Time::checked_sub_secs
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_sub
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_sub_secs(self, secs: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:897,1
    - Dst: Time::checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:898,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - mins
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 899
      start: 896
    functionDepth: 12
    functionLinenumber: 896
    functionLinenumberEnd: 899
    functionName: Time::checked_sub_mins
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_sub
    - i64::checked_mul
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_sub_mins(self, mins: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:903,1
    - Dst: Time::checked_sub
      Src: /src/symphonia/symphonia-core/src/units.rs:904,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - hours
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 905
      start: 902
    functionDepth: 12
    functionLinenumber: 902
    functionLinenumberEnd: 905
    functionName: Time::checked_sub_hours
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Time::checked_sub
    - i64::checked_mul
    linkageType: ''
    returnType: Option
    signature: 'pub fn checked_sub_hours(self, hours: i64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Time::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:922,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:922,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - seconds
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 923
      start: 921
    functionDepth: 1
    functionLinenumber: 921
    functionLinenumberEnd: 923
    functionName: Time::from
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Option::expect
    - i64::from
    - Time::try_new
    linkageType: ''
    returnType: Self
    signature: 'fn from(seconds: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:942,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:942,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:943,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 945
      start: 940
    functionDepth: 10
    functionLinenumber: 940
    functionLinenumberEnd: 945
    functionName: TimeBase::default
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self::expect
    - NonZero::new
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - numer
    - denom
    argTypes:
    - NonZero<u32>
    - NonZero<u32>
    constantsTouched: []
    func_position:
      end: 952
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 952
    functionName: TimeBase::new
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub const fn new(numer: NonZero<u32>, denom: NonZero<u32>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:956,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:957,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:958,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - numer
    - denom
    argTypes:
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 959
      start: 955
    functionDepth: 10
    functionLinenumber: 955
    functionLinenumberEnd: 959
    functionName: TimeBase::try_new
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached:
    - Some
    - NonZero::new
    linkageType: ''
    returnType: Option
    signature: 'pub fn try_new(numer: u32, denom: u32) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:963,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rate
    argTypes:
    - NonZero<u32>
    constantsTouched: []
    func_position:
      end: 964
      start: 962
    functionDepth: 10
    functionLinenumber: 962
    functionLinenumberEnd: 964
    functionName: TimeBase::from_recip
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 3
    functionsReached:
    - Self::expect
    - NonZero::new
    linkageType: ''
    returnType: Self
    signature: 'pub const fn from_recip(rate: NonZero<u32>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:969,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:970,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:970,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:970,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rate
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 971
      start: 968
    functionDepth: 10
    functionLinenumber: 968
    functionLinenumberEnd: 971
    functionName: TimeBase::try_from_recip
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Self::expect
    - Some
    - NonZero::new
    linkageType: ''
    returnType: Option
    signature: 'pub fn try_from_recip(rate: u32) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:979,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:979,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:980,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:980,1
    - Dst: Timestamp::get
      Src: /src/symphonia/symphonia-core/src/units.rs:983,1
    - Dst: i64::checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:983,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-core/src/units.rs:983,1
    - Dst: Option::checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:983,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:986,1
    - Dst: Time::from_nanos
      Src: /src/symphonia/symphonia-core/src/units.rs:986,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:989,1
    - Dst: Timestamp::get
      Src: /src/symphonia/symphonia-core/src/units.rs:989,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:989,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:990,1
    - Dst: Time::try_from_nanos_i128
      Src: /src/symphonia/symphonia-core/src/units.rs:991,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Timestamp
    constantsTouched: []
    func_position:
      end: 993
      start: 975
    functionDepth: 12
    functionLinenumber: 975
    functionLinenumberEnd: 993
    functionName: TimeBase::calc_time
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 4
    functionsReached:
    - Timestamp::get
    - Option::checked_mul
    - get
    - i64::from
    - Some
    - Time::try_from_nanos_i128
    - Option::and_then
    - Time::from_nanos
    - i64::checked_mul
    - i128::from
    linkageType: ''
    returnType: Option
    signature: 'pub fn calc_time(&self, ts: Timestamp) -> Option<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TimeBase::calc_time
      Src: /src/symphonia/symphonia-core/src/units.rs:998,1
    - Dst: Option::unwrap_or_else
      Src: /src/symphonia/symphonia-core/src/units.rs:998,1
    - Dst: Timestamp::is_negative
      Src: /src/symphonia/symphonia-core/src/units.rs:998,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Timestamp
    constantsTouched: []
    func_position:
      end: 999
      start: 997
    functionDepth: 13
    functionLinenumber: 997
    functionLinenumberEnd: 999
    functionName: TimeBase::calc_time_saturating
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 2
    functionsReached:
    - Option::unwrap_or_else
    - Timestamp::is_negative
    - TimeBase::calc_time
    linkageType: ''
    returnType: Time
    signature: 'pub fn calc_time_saturating(&self, ts: Timestamp) -> Time'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1006,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1006,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1007,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1007,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1010,1
    - Dst: checked_mul
      Src: /src/symphonia/symphonia-core/src/units.rs:1012,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-core/src/units.rs:1012,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-core/src/units.rs:1015,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/units.rs:1012,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:1019,1
    - Dst: Timestamp
      Src: /src/symphonia/symphonia-core/src/units.rs:1019,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1023,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1023,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1024,1
    - Dst: i128::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1024,1
    - Dst: Timestamp::try_into
      Src: /src/symphonia/symphonia-core/src/units.rs:1025,1
    - Dst: ok
      Src: /src/symphonia/symphonia-core/src/units.rs:1025,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/units.rs:1025,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 44
    argCount: 1
    argNames:
    - time
    argTypes:
    - Time
    constantsTouched: []
    func_position:
      end: 1027
      start: 1003
    functionDepth: 10
    functionLinenumber: 1003
    functionLinenumberEnd: 1027
    functionName: TimeBase::calc_timestamp
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 1
    functionsReached:
    - get
    - i64::from
    - Some
    - map
    - Timestamp::try_into
    - and_then
    - ok
    - Timestamp
    - checked_mul
    - checked_add
    - i128::from
    linkageType: ''
    returnType: Option
    signature: 'pub fn calc_timestamp(&self, time: Time) -> Option<Timestamp>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:1036,1
    - Dst: f64::is_finite
      Src: /src/symphonia/symphonia-core/src/units.rs:1040,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1045,1
    - Dst: round
      Src: /src/symphonia/symphonia-core/src/units.rs:1045,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1048,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/units.rs:1052,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:1052,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 1
    argNames:
    - factor
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 1053
      start: 1033
    functionDepth: 10
    functionLinenumber: 1033
    functionLinenumberEnd: 1053
    functionName: TimeBase::scale
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - get
    - Some
    - f64::from
    - NonZero::new
    - round
    - f64::is_finite
    linkageType: ''
    returnType: Option
    signature: 'pub fn scale(self, factor: f64) -> Option<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1059,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1060,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:1073,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1073,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:1073,1
    - Dst: NonZero::new
      Src: /src/symphonia/symphonia-core/src/units.rs:1074,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1074,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:1074,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 1056
    functionDepth: 10
    functionLinenumber: 1056
    functionLinenumberEnd: 1076
    functionName: TimeBase::reduce
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - get
    - Self::expect
    - NonZero::new
    linkageType: ''
    returnType: Self
    signature: pub fn reduce(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 1088
      start: 1086
    functionDepth: 0
    functionLinenumber: 1086
    functionLinenumberEnd: 1088
    functionName: TimeBase::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 101
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1259
      start: 1098
    functionDepth: 0
    functionLinenumber: 1098
    functionLinenumberEnd: 1259
    functionName: tests::verify_time
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_time()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1263,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1263,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1264,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1264,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1323,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1323,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1324,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1262
    functionDepth: 11
    functionLinenumber: 1262
    functionLinenumberEnd: 1331
    functionName: tests::verify_timebase
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Option::unwrap
    - TimeBase::try_new
    linkageType: ''
    returnType: void
    signature: fn verify_timebase()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1377
      start: 1334
    functionDepth: 0
    functionLinenumber: 1334
    functionLinenumberEnd: 1377
    functionName: tests::verify_timebase_reduce
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_timebase_reduce()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TimeBase::calc_time
      Src: /src/symphonia/symphonia-core/src/units.rs:1409,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-core/src/units.rs:1409,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:1409,1
    - Dst: TimeBase::calc_timestamp
      Src: /src/symphonia/symphonia-core/src/units.rs:1410,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/units.rs:1410,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/units.rs:1411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - ts
    - tb
    argTypes:
    - i64
    - TimeBase
    constantsTouched: []
    func_position:
      end: 1415
      start: 1408
    functionDepth: 13
    functionLinenumber: 1408
    functionLinenumberEnd: 1415
    functionName: t::e::s::t::s::::::::v::e::r::i::f::y::_::t::s::_::r::o::u::n::d::t::r::i::p::_::w::i::t::h::_::t::i::m::e::test_roundtrip
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Option::expect
    - Timestamp::from
    - get
    - TimeBase::calc_time
    - TimeBase::calc_timestamp
    linkageType: ''
    returnType: void
    signature: 'fn test_roundtrip(ts: i64, tb: TimeBase)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1382,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1382,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1383,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1383,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1384,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1384,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1385,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1385,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1386,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1386,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1387,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1387,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1388,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1388,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1389,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1389,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1390,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1390,1
    - Dst: TimeBase::try_new
      Src: /src/symphonia/symphonia-core/src/units.rs:1391,1
    - Dst: Option::unwrap
      Src: /src/symphonia/symphonia-core/src/units.rs:1391,1
    - Dst: test_roundtrip
      Src: /src/symphonia/symphonia-core/src/units.rs:1419,1
    - Dst: test_roundtrip
      Src: /src/symphonia/symphonia-core/src/units.rs:1425,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 65
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1380
    functionDepth: 11
    functionLinenumber: 1380
    functionLinenumberEnd: 1428
    functionName: tests::verify_ts_roundtrip_with_time
    functionSourceFile: /src/symphonia/symphonia-core/src/units.rs
    functionUses: 0
    functionsReached:
    - Option::unwrap
    - TimeBase::try_new
    - test_roundtrip
    linkageType: ''
    returnType: void
    signature: fn verify_ts_roundtrip_with_time()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_shl
      Src: /src/symphonia/symphonia-core/src/util.rs:24,1
    - Dst: wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - value
    - width
    argTypes:
    - u8
    - u32
    constantsTouched: []
    func_position:
      end: 25
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 25
    functionName: bits::sign_extend_leq8_to_i8
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 1
    functionsReached:
    - wrapping_shl
    - wrapping_shr
    linkageType: ''
    returnType: i8
    signature: 'pub fn sign_extend_leq8_to_i8(value: u8, width: u32) -> i8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_shl
      Src: /src/symphonia/symphonia-core/src/util.rs:31,1
    - Dst: wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - value
    - width
    argTypes:
    - u16
    - u32
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: bits::sign_extend_leq16_to_i16
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 2
    functionsReached:
    - wrapping_shl
    - wrapping_shr
    linkageType: ''
    returnType: i16
    signature: 'pub fn sign_extend_leq16_to_i16(value: u16, width: u32) -> i16'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_shl
      Src: /src/symphonia/symphonia-core/src/util.rs:38,1
    - Dst: wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - value
    - width
    argTypes:
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: bits::sign_extend_leq32_to_i32
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 8
    functionsReached:
    - wrapping_shl
    - wrapping_shr
    linkageType: ''
    returnType: i32
    signature: 'pub fn sign_extend_leq32_to_i32(value: u32, width: u32) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_shl
      Src: /src/symphonia/symphonia-core/src/util.rs:45,1
    - Dst: wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - value
    - width
    argTypes:
    - u64
    - u32
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: bits::sign_extend_leq64_to_i64
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 3
    functionsReached:
    - wrapping_shl
    - wrapping_shr
    linkageType: ''
    returnType: i64
    signature: 'pub fn sign_extend_leq64_to_i64(value: u64, width: u32) -> i64'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: bits::mask_at
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn mask_at(idx: u32) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: bits::mask_upper_eq
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn mask_upper_eq(idx: u32) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: bits::mask_upper
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn mask_upper(idx: u32) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: bits::mask_lower_eq
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn mask_lower_eq(idx: u32) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: bits::mask_lower
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn mask_lower(idx: u32) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - upper
    - lower
    argTypes:
    - u32
    - u32
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: bits::mask_range
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn mask_range(upper: u32, lower: u32) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/util.rs:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: bits::contains_ones_byte_u16
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - wrapping_add
    linkageType: ''
    returnType: bool
    signature: 'pub fn contains_ones_byte_u16(value: u16) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/util.rs:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: bits::contains_ones_byte_u32
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - wrapping_add
    linkageType: ''
    returnType: bool
    signature: 'pub fn contains_ones_byte_u32(value: u32) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/util.rs:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: bits::contains_ones_byte_u64
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 1
    functionsReached:
    - wrapping_add
    linkageType: ''
    returnType: bool
    signature: 'pub fn contains_ones_byte_u64(value: u64) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 169
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 169
    functionName: bits::verify_masks
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_masks()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - val
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: clamp::clamp_u8
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: 'pub fn clamp_u8(val: u16) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i16::wrapping_add
      Src: /src/symphonia/symphonia-core/src/util.rs:189,1
    - Dst: i16::wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - val
    argTypes:
    - i16
    constantsTouched: []
    func_position:
      end: 203
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 203
    functionName: clamp::clamp_i8
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - i16::wrapping_shr
    - i16::wrapping_add
    linkageType: ''
    returnType: i8
    signature: 'pub fn clamp_i8(val: i16) -> i8'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: clamp::clamp_u16
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: 'pub fn clamp_u16(val: u32) -> u16'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::wrapping_add
      Src: /src/symphonia/symphonia-core/src/util.rs:214,1
    - Dst: i32::wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - val
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 220
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 220
    functionName: clamp::clamp_i16
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 2
    functionsReached:
    - i32::wrapping_shr
    - i32::wrapping_add
    linkageType: ''
    returnType: i16
    signature: 'pub fn clamp_i16(val: i32) -> i16'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: clamp::clamp_u24
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: 'pub fn clamp_u24(val: u32) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::wrapping_add
      Src: /src/symphonia/symphonia-core/src/util.rs:231,1
    - Dst: i32::wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - val
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 237
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 237
    functionName: clamp::clamp_i24
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 1
    functionsReached:
    - i32::wrapping_shr
    - i32::wrapping_add
    linkageType: ''
    returnType: i32
    signature: 'pub fn clamp_i24(val: i32) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - val
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 243
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionName: clamp::clamp_u32
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: 'pub fn clamp_u32(val: u64) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i64::wrapping_add
      Src: /src/symphonia/symphonia-core/src/util.rs:248,1
    - Dst: i64::wrapping_shr
      Src: /src/symphonia/symphonia-core/src/util.rs:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - val
    argTypes:
    - i64
    constantsTouched: []
    func_position:
      end: 254
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 254
    functionName: clamp::clamp_i32
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - i64::wrapping_shr
    - i64::wrapping_add
    linkageType: ''
    returnType: i32
    signature: 'pub fn clamp_i32(val: i64) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - val
    argTypes:
    - f32
    constantsTouched: []
    func_position:
      end: 266
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 266
    functionName: clamp::clamp_f32
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: f32
    signature: 'pub fn clamp_f32(val: f32) -> f32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - val
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 275
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionName: clamp::clamp_f64
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: f64
    signature: 'pub fn clamp_f64(val: f64) -> f64'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 321
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 321
    functionName: clamp::verify_clamp
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_clamp()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-core/src/util.rs:334,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/util.rs:334,1
    - Dst: Result::is_ascii
      Src: /src/symphonia/symphonia-core/src/util.rs:334,1
    - Dst: char::from
      Src: /src/symphonia/symphonia-core/src/util.rs:334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 335
      start: 333
    functionDepth: 11
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionName: text::decode_ascii_lossy
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - char::from
    - Result::is_ascii
    - Result::iter
    - map
    linkageType: ''
    returnType: impl Iterator
    signature: 'pub fn decode_ascii_lossy(buf: &[u8]) -> impl Iterator<Item = char>
      + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-core/src/util.rs:349,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/util.rs:349,1
    - Dst: char::from
      Src: /src/symphonia/symphonia-core/src/util.rs:354,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 357
      start: 344
    functionDepth: 11
    functionLinenumber: 344
    functionLinenumberEnd: 357
    functionName: text::decode_isoiec8859_1_lossy
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - char::from
    - Result::iter
    - map
    linkageType: ''
    returnType: impl Iterator
    signature: 'pub fn decode_isoiec8859_1_lossy(buf: &[u8]) -> impl Iterator<Item
      = char> + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-core/src/util.rs:364,1
    - Dst: copied
      Src: /src/symphonia/symphonia-core/src/util.rs:364,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/util.rs:364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 365
      start: 363
    functionDepth: 11
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionName: text::decode_iso8859_1_lossy
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 2
    functionsReached:
    - Result::iter
    - map
    - copied
    linkageType: ''
    returnType: impl Iterator
    signature: 'pub fn decode_iso8859_1_lossy(buf: &[u8]) -> impl Iterator<Item =
      char> + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-core/src/util.rs:415,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/util.rs:415,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/util.rs:417,1
    - Dst: char::from
      Src: /src/symphonia/symphonia-core/src/util.rs:419,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 421
      start: 378
    functionDepth: 11
    functionLinenumber: 378
    functionLinenumberEnd: 421
    functionName: text::decode_cp1252_lossy
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - char::from
    - Result::iter
    - map
    linkageType: ''
    returnType: impl Iterator
    signature: 'pub fn decode_cp1252_lossy(buf: &[u8]) -> impl Iterator<Item = char>
      + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: first_chunk::<2>
      Src: /src/symphonia/symphonia-core/src/util.rs:431,1
    - Dst: decode_utf16_bytes
      Src: /src/symphonia/symphonia-core/src/util.rs:433,1
    - Dst: decode_utf16_bytes
      Src: /src/symphonia/symphonia-core/src/util.rs:435,1
    - Dst: decode_utf16_bytes
      Src: /src/symphonia/symphonia-core/src/util.rs:437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 439
      start: 429
    functionDepth: 10
    functionLinenumber: 429
    functionLinenumberEnd: 439
    functionName: text::decode_utf16be_lossy
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 2
    functionsReached:
    - decode_utf16_bytes
    - first_chunk::<2>
    linkageType: ''
    returnType: impl Iterator
    signature: 'pub fn decode_utf16be_lossy(buf: &[u8]) -> impl Iterator<Item = char>
      + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: first_chunk::<2>
      Src: /src/symphonia/symphonia-core/src/util.rs:449,1
    - Dst: decode_utf16_bytes
      Src: /src/symphonia/symphonia-core/src/util.rs:451,1
    - Dst: decode_utf16_bytes
      Src: /src/symphonia/symphonia-core/src/util.rs:453,1
    - Dst: decode_utf16_bytes
      Src: /src/symphonia/symphonia-core/src/util.rs:455,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 457
      start: 447
    functionDepth: 10
    functionLinenumber: 447
    functionLinenumberEnd: 457
    functionName: text::decode_utf16le_lossy
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - decode_utf16_bytes
    - first_chunk::<2>
    linkageType: ''
    returnType: impl Iterator
    signature: 'pub fn decode_utf16le_lossy(buf: &[u8]) -> impl Iterator<Item = char>
      + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: char::decode_utf16
      Src: /src/symphonia/symphonia-core/src/util.rs:463,1
    - Dst: Result::chunks_exact
      Src: /src/symphonia/symphonia-core/src/util.rs:464,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/util.rs:464,1
    - Dst: Result::try_into
      Src: /src/symphonia/symphonia-core/src/util.rs:465,1
    - Dst: expect
      Src: /src/symphonia/symphonia-core/src/util.rs:465,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/util.rs:463,1
    - Dst: MediaSourceStream::unwrap_or
      Src: /src/symphonia/symphonia-core/src/util.rs:468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 2
    argNames:
    - buf
    - f
    argTypes:
    - '&[u8]'
    - fn([u8; 2]) -> u16
    constantsTouched: []
    func_position:
      end: 469
      start: 461
    functionDepth: 9
    functionLinenumber: 461
    functionLinenumberEnd: 469
    functionName: text::decode_utf16_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - expect
    - char::decode_utf16
    - Result::try_into
    - Result::chunks_exact
    - map
    - MediaSourceStream::unwrap_or
    linkageType: ''
    returnType: impl Iterator
    signature: 'fn decode_utf16_bytes(buf: &[u8], f: fn([u8; 2]) -> u16) -> impl Iterator<Item
      = char> + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 478
      start: 476
    functionDepth: 0
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionName: text::null
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn null(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: 'null'
      Src: /src/symphonia/symphonia-core/src/util.rs:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 484
      start: 482
    functionDepth: 1
    functionLinenumber: 482
    functionLinenumberEnd: 484
    functionName: text::not_null
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - 'null'
    linkageType: ''
    returnType: bool
    signature: 'pub fn not_null(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 493
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 493
    functionName: text::control
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn control(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: control
      Src: /src/symphonia/symphonia-core/src/util.rs:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 502
      start: 500
    functionDepth: 1
    functionLinenumber: 500
    functionLinenumberEnd: 502
    functionName: text::not_control
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - control
    linkageType: ''
    returnType: bool
    signature: 'pub fn not_control(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 508
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 508
    functionName: text::c0_control
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn c0_control(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: c0_control
      Src: /src/symphonia/symphonia-core/src/util.rs:513,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 514
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionName: text::not_c0_control
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - c0_control
    linkageType: ''
    returnType: bool
    signature: 'pub fn not_c0_control(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 520
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 520
    functionName: text::c1_control
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn c1_control(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: c1_control
      Src: /src/symphonia/symphonia-core/src/util.rs:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 526
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 526
    functionName: text::not_c1_control
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - c1_control
    linkageType: ''
    returnType: bool
    signature: 'pub fn not_c1_control(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 534
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 534
    functionName: text::ascii_text
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'pub fn ascii_text(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ascii_text
      Src: /src/symphonia/symphonia-core/src/util.rs:541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - '&char'
    constantsTouched: []
    func_position:
      end: 542
      start: 540
    functionDepth: 1
    functionLinenumber: 540
    functionLinenumberEnd: 542
    functionName: text::not_ascii_text
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached:
    - ascii_text
    linkageType: ''
    returnType: bool
    signature: 'pub fn not_ascii_text(c: &char) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 571
      start: 549
    functionDepth: 0
    functionLinenumber: 549
    functionLinenumberEnd: 571
    functionName: text::verify_decode_utf16be
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_decode_utf16be()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 596
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 596
    functionName: text::verify_decode_utf16le
    functionSourceFile: /src/symphonia/symphonia-core/src/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_decode_utf16le()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/meta.rs:72,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/meta.rs:72,1
    - Dst: FourCc::get
      Src: /src/symphonia/symphonia-core/src/meta.rs:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - cc
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: MetadataId::new
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 1
    functionsReached:
    - Self
    - u32::from_be_bytes
    - FourCc::get
    linkageType: ''
    returnType: MetadataId
    signature: 'pub const fn new(cc: FourCc) -> MetadataId'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataId::new
      Src: /src/symphonia/symphonia-core/src/meta.rs:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: MetadataId::from
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - MetadataId::new
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: FourCc) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: MetadataId::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - limit
    argTypes:
    - Limit
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: MetadataOptions::limit_tag_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn limit_tag_bytes(mut self, limit: Limit) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - limit
    argTypes:
    - Limit
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: MetadataOptions::limit_visual_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn limit_visual_bytes(mut self, limit: Limit) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 433
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 433
    functionName: impl_from_for_value
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::with_capacity
      Src: /src/symphonia/symphonia-core/src/meta.rs:456,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/meta.rs:456,1
    - Dst: push_str
      Src: /src/symphonia/symphonia-core/src/meta.rs:461,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/meta.rs:462,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/meta.rs:463,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 467
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 467
    functionName: buffer_to_hex_string
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 1
    functionsReached:
    - push
    - String::with_capacity
    - push_str
    - Result::len
    linkageType: ''
    returnType: String
    signature: 'fn buffer_to_hex_string(buf: &[u8]) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::write_str
      Src: /src/symphonia/symphonia-core/src/meta.rs:473,1
    - Dst: buffer_to_hex_string
      Src: /src/symphonia/symphonia-core/src/meta.rs:473,1
    - Dst: fmt::Display::fmt
      Src: /src/symphonia/symphonia-core/src/meta.rs:474,1
    - Dst: fmt::Display::fmt
      Src: /src/symphonia/symphonia-core/src/meta.rs:476,1
    - Dst: fmt::Display::fmt
      Src: /src/symphonia/symphonia-core/src/meta.rs:477,1
    - Dst: fmt::Display::fmt
      Src: /src/symphonia/symphonia-core/src/meta.rs:478,1
    - Dst: fmt::Display::fmt
      Src: /src/symphonia/symphonia-core/src/meta.rs:479,1
    - Dst: Result::join
      Src: /src/symphonia/symphonia-core/src/meta.rs:479,1
    - Dst: fmt::Display::fmt
      Src: /src/symphonia/symphonia-core/src/meta.rs:480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 482
      start: 470
    functionDepth: 2
    functionLinenumber: 470
    functionLinenumberEnd: 482
    functionName: RawValue::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - Result::join
    - fmt::Display::fmt
    - buffer_to_hex_string
    - Result::write_str
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: F::into
      Src: /src/symphonia/symphonia-core/src/meta.rs:501,1
    - Dst: into
      Src: /src/symphonia/symphonia-core/src/meta.rs:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - field
    - value
    argTypes:
    - F
    - V
    constantsTouched: []
    func_position:
      end: 502
      start: 496
    functionDepth: 14
    functionLinenumber: 496
    functionLinenumberEnd: 502
    functionName: RawTagSubField::new
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 11
    functionsReached:
    - F::into
    - into
    linkageType: ''
    returnType: Self
    signature: 'pub fn new<F, V>(field: F, value: V) -> SelfwhereF: Into<String>,V:
      Into<RawValue>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::into
      Src: /src/symphonia/symphonia-core/src/meta.rs:525,1
    - Dst: into
      Src: /src/symphonia/symphonia-core/src/meta.rs:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - key
    - value
    argTypes:
    - K
    - V
    constantsTouched: []
    func_position:
      end: 526
      start: 520
    functionDepth: 14
    functionLinenumber: 520
    functionLinenumberEnd: 526
    functionName: RawTag::new
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 12
    functionsReached:
    - String::into
    - into
    linkageType: ''
    returnType: Self
    signature: 'pub fn new<K, V>(key: K, value: V) -> SelfwhereK: Into<String>,V:
      Into<RawValue>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::into
      Src: /src/symphonia/symphonia-core/src/meta.rs:535,1
    - Dst: into
      Src: /src/symphonia/symphonia-core/src/meta.rs:535,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/meta.rs:535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - key
    - value
    - sub_fields
    argTypes:
    - K
    - V
    - Box<[RawTagSubField]>
    constantsTouched: []
    func_position:
      end: 536
      start: 530
    functionDepth: 14
    functionLinenumber: 530
    functionLinenumberEnd: 536
    functionName: RawTag::new_with_sub_fields
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 21
    functionsReached:
    - String::into
    - Some
    - into
    linkageType: ''
    returnType: Self
    signature: 'pub fn new_with_sub_fields<K, V>(key: K, value: V, sub_fields: Box<[RawTagSubField]>)
      -> SelfwhereK: Into<String>,V: Into<RawValue>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - raw
    argTypes:
    - RawTag
    constantsTouched: []
    func_position:
      end: 552
      start: 550
    functionDepth: 0
    functionLinenumber: 550
    functionLinenumberEnd: 552
    functionName: Tag::new
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 29
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(raw: RawTag) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/meta.rs:556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - raw
    - std
    argTypes:
    - RawTag
    - StandardTag
    constantsTouched: []
    func_position:
      end: 557
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionName: Tag::new_std
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 9
    functionsReached:
    - Some
    linkageType: ''
    returnType: Self
    signature: 'pub fn new_std(raw: RawTag, std: StandardTag) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::into
      Src: /src/symphonia/symphonia-core/src/meta.rs:566,1
    - Dst: into
      Src: /src/symphonia/symphonia-core/src/meta.rs:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - key
    - value
    - std
    argTypes:
    - K
    - V
    - Option<StandardTag>
    constantsTouched: []
    func_position:
      end: 567
      start: 561
    functionDepth: 14
    functionLinenumber: 561
    functionLinenumberEnd: 567
    functionName: Tag::new_from_parts
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 16
    functionsReached:
    - String::into
    - into
    linkageType: ''
    returnType: Self
    signature: 'pub fn new_from_parts<K, V>(key: K, value: V, std: Option<StandardTag>)
      -> SelfwhereK: Into<String>,V: Into<RawValue>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/symphonia/symphonia-core/src/meta.rs:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 573
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 573
    functionName: Tag::has_std_tag
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - is_some
    linkageType: ''
    returnType: bool
    signature: pub fn has_std_tag(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/meta.rs:605,1
    - Dst: io::Result::get
      Src: /src/symphonia/symphonia-core/src/meta.rs:605,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/meta.rs:606,1
    - Dst: io::Result::get
      Src: /src/symphonia/symphonia-core/src/meta.rs:606,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/meta.rs:607,1
    - Dst: io::Result::get
      Src: /src/symphonia/symphonia-core/src/meta.rs:607,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/meta.rs:608,1
    - Dst: io::Result::get
      Src: /src/symphonia/symphonia-core/src/meta.rs:608,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/meta.rs:609,1
    - Dst: io::Result::get
      Src: /src/symphonia/symphonia-core/src/meta.rs:609,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 611
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 611
    functionName: ColorModel::bits_per_pixel
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - io::Result::get
    - u32::from
    linkageType: ''
    returnType: u32
    signature: pub fn bits_per_pixel(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 616
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 616
    functionName: ColorModel::has_alpha_channel
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn has_alpha_channel(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/meta.rs:748,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/meta.rs:748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - info
    argTypes:
    - MetadataInfo
    constantsTouched: []
    func_position:
      end: 750
      start: 746
    functionDepth: 15
    functionLinenumber: 746
    functionLinenumberEnd: 750
    functionName: MetadataBuilder::new
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 12
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(info: MetadataInfo) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/meta.rs:754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - tag
    argTypes:
    - Tag
    constantsTouched: []
    func_position:
      end: 756
      start: 753
    functionDepth: 1
    functionLinenumber: 753
    functionLinenumberEnd: 756
    functionName: MetadataBuilder::add_tag
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 12
    functionsReached:
    - push
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn add_tag(&mut self, tag: Tag) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/meta.rs:760,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - visual
    argTypes:
    - Visual
    constantsTouched: []
    func_position:
      end: 762
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 762
    functionName: MetadataBuilder::add_visual
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 2
    functionsReached:
    - push
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn add_visual(&mut self, visual: Visual) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/meta.rs:766,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - per_track
    argTypes:
    - PerTrackMetadata
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 1
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: MetadataBuilder::add_track
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - push
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn add_track(&mut self, per_track: PerTrackMetadata) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 773
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 773
    functionName: MetadataBuilder::build
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MetadataRevision
    signature: pub fn build(self) -> MetadataRevision
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/meta.rs:786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - track_id
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 788
      start: 784
    functionDepth: 15
    functionLinenumber: 784
    functionLinenumberEnd: 788
    functionName: PerTrackMetadataBuilder::new
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 1
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(track_id: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/meta.rs:792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - tag
    argTypes:
    - Tag
    constantsTouched: []
    func_position:
      end: 794
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 794
    functionName: PerTrackMetadataBuilder::add_tag
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - push
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn add_tag(&mut self, tag: Tag) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/meta.rs:798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - visual
    argTypes:
    - Visual
    constantsTouched: []
    func_position:
      end: 800
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionName: PerTrackMetadataBuilder::add_visual
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - push
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn add_visual(&mut self, visual: Visual) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 805
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 805
    functionName: PerTrackMetadataBuilder::build
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PerTrackMetadata
    signature: pub fn build(self) -> PerTrackMetadata
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/meta.rs:817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 818
      start: 816
    functionDepth: 1
    functionLinenumber: 816
    functionLinenumberEnd: 818
    functionName: Metadata::is_latest
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 2
    functionsReached:
    - len
    linkageType: ''
    returnType: bool
    signature: pub fn is_latest(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/symphonia/symphonia-core/src/meta.rs:822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 823
      start: 821
    functionDepth: 2
    functionLinenumber: 821
    functionLinenumberEnd: 823
    functionName: Metadata::current
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 4
    functionsReached:
    - front
    linkageType: ''
    returnType: Option
    signature: pub fn current(&self) -> Option<&MetadataRevision>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Metadata::pop
      Src: /src/symphonia/symphonia-core/src/meta.rs:829,1
    - Dst: Option::is_none
      Src: /src/symphonia/symphonia-core/src/meta.rs:829,1
    - Dst: Metadata::current
      Src: /src/symphonia/symphonia-core/src/meta.rs:833,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 834
      start: 827
    functionDepth: 3
    functionLinenumber: 827
    functionLinenumberEnd: 834
    functionName: Metadata::skip_to_latest
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - Metadata::pop
    - Option::is_none
    - Metadata::current
    linkageType: ''
    returnType: Option
    signature: pub fn skip_to_latest(&mut self) -> Option<&MetadataRevision>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/meta.rs:841,1
    - Dst: pop_front
      Src: /src/symphonia/symphonia-core/src/meta.rs:841,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 842
      start: 840
    functionDepth: 1
    functionLinenumber: 840
    functionLinenumberEnd: 842
    functionName: Metadata::pop
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 3
    functionsReached:
    - len
    - pop_front
    linkageType: ''
    returnType: Option
    signature: pub fn pop(&mut self) -> Option<MetadataRevision>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 855
      start: 853
    functionDepth: 0
    functionLinenumber: 853
    functionLinenumberEnd: 855
    functionName: MetadataLog::metadata
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Metadata
    signature: pub fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/symphonia/symphonia-core/src/meta.rs:859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rev
    argTypes:
    - MetadataRevision
    constantsTouched: []
    func_position:
      end: 860
      start: 858
    functionDepth: 0
    functionLinenumber: 858
    functionLinenumberEnd: 860
    functionName: MetadataLog::push
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: 'pub fn push(&mut self, rev: MetadataRevision)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: append
      Src: /src/symphonia/symphonia-core/src/meta.rs:864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - other
    argTypes:
    - '&mut MetadataLog'
    constantsTouched: []
    func_position:
      end: 865
      start: 863
    functionDepth: 1
    functionLinenumber: 863
    functionLinenumberEnd: 865
    functionName: MetadataLog::append
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - append
    linkageType: ''
    returnType: void
    signature: 'pub fn append(&mut self, other: &mut MetadataLog)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/symphonia/symphonia-core/src/meta.rs:869,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rev
    argTypes:
    - MetadataRevision
    constantsTouched: []
    func_position:
      end: 870
      start: 868
    functionDepth: 1
    functionLinenumber: 868
    functionLinenumberEnd: 870
    functionName: MetadataLog::push_front
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - push_front
    linkageType: ''
    returnType: void
    signature: 'pub fn push_front(&mut self, rev: MetadataRevision)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pop_back
      Src: /src/symphonia/symphonia-core/src/meta.rs:875,1
    - Dst: push_front
      Src: /src/symphonia/symphonia-core/src/meta.rs:876,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - other
    argTypes:
    - '&mut MetadataLog'
    constantsTouched: []
    func_position:
      end: 878
      start: 873
    functionDepth: 2
    functionLinenumber: 873
    functionLinenumberEnd: 878
    functionName: MetadataLog::append_front
    functionSourceFile: /src/symphonia/symphonia-core/src/meta.rs
    functionUses: 0
    functionsReached:
    - push_front
    - pop_back
    linkageType: ''
    returnType: void
    signature: 'pub fn append_front(&mut self, other: &mut MetadataLog)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:15,1
    - Dst: io::Error::new
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 16
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 16
    functionName: out_of_bounds_error
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 7
    functionsReached:
    - io::Error::new
    - Err
    linkageType: ''
    returnType: io::Result
    signature: fn out_of_bounds_error<T>() -> io::Result<T>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::pos
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - inner
    - len
    argTypes:
    - B
    - u64
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 3
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: ScopedStream::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 9
    functionsReached:
    - MediaSourceStream::pos
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(inner: B, len: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: ScopedStream::inner
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&B'
    signature: pub fn inner(&self) -> &B
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: ScopedStream::inner_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut B'
    signature: pub fn inner_mut(&mut self) -> &mut B
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 13
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: ScopedStream::ignore
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - ignore_bytes
    linkageType: ''
    returnType: io::Result
    signature: pub fn ignore(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: ScopedStream::into_inner
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: B
    signature: pub fn into_inner(self) -> B
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: ScopedStream::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn byte_len(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: ScopedStream::bytes_read
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn bytes_read(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: ScopedStream::bytes_available
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn bytes_available(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: out_of_bounds_error
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:75,1
    - Dst: read_byte
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 13
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: ScopedStream::read_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - out_of_bounds_error
    - read_byte
    linkageType: ''
    returnType: io::Result
    signature: fn read_byte(&mut self) -> io::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: out_of_bounds_error
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:85,1
    - Dst: read_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 13
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: ScopedStream::read_double_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - out_of_bounds_error
    - read_double_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_double_bytes(&mut self) -> io::Result<[u8; 2]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: out_of_bounds_error
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:95,1
    - Dst: read_triple_bytes
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 13
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: ScopedStream::read_triple_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - out_of_bounds_error
    - read_triple_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_triple_bytes(&mut self) -> io::Result<[u8; 3]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: out_of_bounds_error
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:105,1
    - Dst: read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 110
      start: 103
    functionDepth: 13
    functionLinenumber: 103
    functionLinenumberEnd: 110
    functionName: ScopedStream::read_quad_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - read_quad_bytes
    - out_of_bounds_error
    linkageType: ''
    returnType: io::Result
    signature: fn read_quad_bytes(&mut self) -> io::Result<[u8; 4]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:114,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:114,1
    - Dst: read_buf
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:115,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: ScopedStream::read_buf
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - read_buf
    - Ok
    - cmp::min
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:121,1
    - Dst: out_of_bounds_error
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:122,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:125,1
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 127
      start: 120
    functionDepth: 13
    functionLinenumber: 120
    functionLinenumberEnd: 127
    functionName: ScopedStream::read_buf_exact
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - out_of_bounds_error
    - read_buf_exact
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf_exact(&mut self, buf: &mut [u8]) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:136,1
    - Dst: out_of_bounds_error
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:137,1
    - Dst: scan_bytes_aligned
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:140,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:141,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 3
    argNames:
    - pattern
    - align
    - buf
    argTypes:
    - '&[u8]'
    - usize
    - '&''a mut [u8]'
    constantsTouched: []
    func_position:
      end: 143
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 143
    functionName: ScopedStream::scan_bytes_aligned
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - out_of_bounds_error
    - len
    - scan_bytes_aligned
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn scan_bytes_aligned<''a>(&mut self,pattern: &[u8],align: usize,buf:
      &''a mut [u8],) -> io::Result<&''a mut [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: out_of_bounds_error
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:148,1
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - count
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 153
      start: 146
    functionDepth: 13
    functionLinenumber: 146
    functionLinenumberEnd: 153
    functionName: ScopedStream::ignore_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - out_of_bounds_error
    - ignore_bytes
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bytes(&mut self, count: u64) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pos
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: ScopedStream::pos
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - pos
    linkageType: ''
    returnType: u64
    signature: fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ensure_seekback_buffer
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: ScopedStream::ensure_seekback_buffer
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - ensure_seekback_buffer
    linkageType: ''
    returnType: void
    signature: 'fn ensure_seekback_buffer(&mut self, len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unread_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:169,1
    - Dst: min
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: ScopedStream::unread_buffer_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - min
    - unread_buffer_len
    linkageType: ''
    returnType: usize
    signature: fn unread_buffer_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:174,1
    - Dst: min
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 2
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: ScopedStream::read_buffer_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - min
    - read_buffer_len
    linkageType: ''
    returnType: usize
    signature: fn read_buffer_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:180,1
    - Dst: u64::clamp
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - pos
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: ScopedStream::seek_buffered
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - u64::clamp
    - seek_buffered
    linkageType: ''
    returnType: u64
    signature: 'fn seek_buffered(&mut self, pos: u64) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: min
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:187,1
    - Dst: min
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:188,1
    - Dst: seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:189,1
    - Dst: Option::clamp
      Src: /src/symphonia/symphonia-core/src/io/scoped_stream.rs:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 1
    argNames:
    - delta
    argTypes:
    - isize
    constantsTouched: []
    func_position:
      end: 190
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 190
    functionName: ScopedStream::seek_buffered_rel
    functionSourceFile: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
    functionUses: 0
    functionsReached:
    - seek_buffered_rel
    - min
    - Option::clamp
    linkageType: ''
    returnType: u64
    signature: 'fn seek_buffered_rel(&mut self, delta: isize) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:15,1
    - Dst: io::Error::new
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 16
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 16
    functionName: underrun_error
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 7
    functionsReached:
    - io::Error::new
    - Err
    linkageType: ''
    returnType: io::Result
    signature: fn underrun_error<T>() -> io::Result<T>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&''a [u8]'
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: BufReader::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 37
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(buf: &''a [u8]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::scan_bytes_aligned_ref
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - pattern
    - scan_len
    argTypes:
    - '&[u8]'
    - usize
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: BufReader::scan_bytes_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - BufReader::scan_bytes_aligned_ref
    linkageType: ''
    returnType: io::Result
    signature: 'pub fn scan_bytes_ref(&mut self, pattern: &[u8], scan_len: usize)
      -> io::Result<&''a [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:52,1
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:53,1
    - Dst: '&[u8]::len'
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:59,1
    - Dst: '&[u8]::len'
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:59,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:61,1
    - Dst: '&[u8]::len'
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:65,1
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:75,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:75,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:76,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 57
    argCount: 3
    argNames:
    - pattern
    - align
    - scan_len
    argTypes:
    - '&[u8]'
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 77
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 77
    functionName: BufReader::scan_bytes_aligned_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 2
    functionsReached:
    - '&[u8]::len'
    - len
    - cmp::min
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'pub fn scan_bytes_aligned_ref(&mut self,pattern: &[u8],align: usize,scan_len:
      usize,) -> io::Result<&''a [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:81,1
    - Dst: underrun_error
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:82,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: BufReader::read_buf_bytes_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - underrun_error
    - len
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'pub fn read_buf_bytes_ref(&mut self, len: usize) -> io::Result<&''a
      [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 93
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionName: BufReader::read_buf_bytes_available_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: '&''a [u8]'
    signature: pub fn read_buf_bytes_available_ref(&mut self) -> &'a [u8]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:99,1
    - Dst: underrun_error
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:100,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 105
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 105
    functionName: BufReader::read_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - underrun_error
    - len
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_byte(&mut self) -> io::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:109,1
    - Dst: underrun_error
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:110,1
    - Dst: Result::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:114,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 118
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 118
    functionName: BufReader::read_double_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - Result::copy_from_slice
    - underrun_error
    - len
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_double_bytes(&mut self) -> io::Result<[u8; 2]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:122,1
    - Dst: underrun_error
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:123,1
    - Dst: Result::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:127,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 131
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 131
    functionName: BufReader::read_triple_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - Result::copy_from_slice
    - underrun_error
    - len
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_triple_bytes(&mut self) -> io::Result<[u8; 3]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:135,1
    - Dst: underrun_error
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:136,1
    - Dst: Result::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:140,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 144
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 144
    functionName: BufReader::read_quad_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - Result::copy_from_slice
    - underrun_error
    - len
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_quad_bytes(&mut self) -> io::Result<[u8; 4]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:147,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:147,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:147,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:148,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 152
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 152
    functionName: BufReader::read_buf
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - len
    - cmp::min
    - copy_from_slice
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:155,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:157,1
    - Dst: underrun_error
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:158,1
    - Dst: Result::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:161,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 165
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 165
    functionName: BufReader::read_buf_exact
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - underrun_error
    - len
    - Result::copy_from_slice
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf_exact(&mut self, buf: &mut [u8]) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::scan_bytes_aligned_ref
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:173,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:173,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:174,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:174,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:176,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 3
    argNames:
    - pattern
    - align
    - buf
    argTypes:
    - '&[u8]'
    - usize
    - '&''b mut [u8]'
    constantsTouched: []
    func_position:
      end: 177
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 177
    functionName: BufReader::scan_bytes_aligned
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - BufReader::scan_bytes_aligned_ref
    - len
    - copy_from_slice
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn scan_bytes_aligned<''b>(&mut self,pattern: &[u8],align: usize,buf:
      &''b mut [u8],) -> io::Result<&''b mut [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:180,1
    - Dst: underrun_error
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:181,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - count
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 186
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 186
    functionName: BufReader::ignore_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - underrun_error
    - len
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bytes(&mut self, count: u64) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: BufReader::pos
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 198
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionName: BufReader::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: u64
    signature: fn byte_len(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: BufReader::bytes_read
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn bytes_read(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/buf_reader.rs:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 208
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionName: BufReader::bytes_available
    functionSourceFile: /src/symphonia/symphonia-core/src/io/buf_reader.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: u64
    signature: fn bytes_available(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:18,1
    - Dst: io::Error::from
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:18,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 19
      start: 17
    functionDepth: 1
    functionLinenumber: 17
    functionLinenumberEnd: 19
    functionName: unexpected_eof_error
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 3
    functionsReached:
    - io::Error::from
    - Err
    linkageType: ''
    returnType: io::Result
    signature: fn unexpected_eof_error<T>() -> io::Result<T>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: MediaSourceStreamOptions::default
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - source
    - options
    argTypes:
    - Box<dyn MediaSource + 's>
    - MediaSourceStreamOptions
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: MediaSourceStream::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 12
    functionsReached:
    - into_boxed_slice
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(source: Box<dyn MediaSource + ''s>, options: MediaSourceStreamOptions)
      -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: MediaSourceStream::is_buffer_exhausted
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_buffer_exhausted(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::is_buffer_exhausted
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:103,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:106,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:111,1
    - Dst: read
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:112,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:116,1
    - Dst: IoSliceMut::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:118,1
    - Dst: IoSliceMut::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:118,1
    - Dst: read_vectored
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:120,1
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:132,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 136
      start: 101
    functionDepth: 14
    functionLinenumber: 101
    functionLinenumberEnd: 136
    functionName: MediaSourceStream::fetch
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 2
    functionsReached:
    - split_at_mut
    - read
    - read_vectored
    - len
    - cmp::min
    - IoSliceMut::new
    - Ok
    - MediaSourceStream::is_buffer_exhausted
    linkageType: ''
    returnType: io::Result
    signature: fn fetch(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::fetch
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:141,1
    - Dst: MediaSourceStream::is_buffer_exhausted
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:143,1
    - Dst: unexpected_eof_error
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:144,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 148
      start: 140
    functionDepth: 15
    functionLinenumber: 140
    functionLinenumberEnd: 148
    functionName: MediaSourceStream::fetch_or_eof
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 2
    functionsReached:
    - Ok
    - MediaSourceStream::fetch
    - MediaSourceStream::is_buffer_exhausted
    - unexpected_eof_error
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_or_eof(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: MediaSourceStream::consume
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn consume(&mut self, len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 165
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 165
    functionName: MediaSourceStream::continguous_buf
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: '&[u8]'
    signature: fn continguous_buf(&self) -> &[u8]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - pos
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 174
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 174
    functionName: MediaSourceStream::reset
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn reset(&mut self, pos: u64)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.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: MediaSourceStream::is_seekable
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 1
    functionsReached:
    - is_seekable
    linkageType: ''
    returnType: bool
    signature: fn is_seekable(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: byte_len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: MediaSourceStream::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - byte_len
    linkageType: ''
    returnType: Option
    signature: fn byte_len(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:191,1
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:193,1
    - Dst: MediaSourceStream::fetch
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:195,1
    - Dst: MediaSourceStream::continguous_buf
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:199,1
    - Dst: '&[u8]::read'
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:199,1
    - Dst: MediaSourceStream::consume
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:203,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:205,1
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:206,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:212,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 213
      start: 190
    functionDepth: 15
    functionLinenumber: 190
    functionLinenumberEnd: 213
    functionName: MediaSourceStream::read
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 2
    functionsReached:
    - MediaSourceStream::consume
    - '&[u8]::read'
    - Result::kind
    - MediaSourceStream::fetch
    - Result::is_empty
    - MediaSourceStream::continguous_buf
    - Err
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read(&mut self, mut buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:223,1
    - Dst: MediaSourceStream::pos
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:223,1
    - Dst: MediaSourceStream::unread_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:225,1
    - Dst: seek
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:226,1
    - Dst: io::SeekFrom::Current
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:226,1
    - Dst: seek
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:228,1
    - Dst: MediaSourceStream::reset
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:231,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 1
    argNames:
    - pos
    argTypes:
    - io::SeekFrom
    constantsTouched: []
    func_position:
      end: 234
      start: 217
    functionDepth: 12
    functionLinenumber: 217
    functionLinenumberEnd: 234
    functionName: MediaSourceStream::seek
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 1
    functionsReached:
    - MediaSourceStream::unread_buffer_len
    - io::SeekFrom::Current
    - MediaSourceStream::reset
    - MediaSourceStream::pos
    - seek
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'fn seek(&mut self, pos: io::SeekFrom) -> io::Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::is_buffer_exhausted
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:243,1
    - Dst: MediaSourceStream::fetch_or_eof
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:244,1
    - Dst: MediaSourceStream::consume
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:248,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:250,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 251
      start: 239
    functionDepth: 16
    functionLinenumber: 239
    functionLinenumberEnd: 251
    functionName: MediaSourceStream::read_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 3
    functionsReached:
    - MediaSourceStream::consume
    - MediaSourceStream::fetch_or_eof
    - MediaSourceStream::is_buffer_exhausted
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_byte(&mut self) -> io::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::continguous_buf
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:256,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:258,1
    - Dst: Result::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:259,1
    - Dst: MediaSourceStream::consume
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:260,1
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:263,1
    - Dst: MediaSourceStream::read_byte
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:264,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:268,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 269
      start: 253
    functionDepth: 17
    functionLinenumber: 253
    functionLinenumberEnd: 269
    functionName: MediaSourceStream::read_double_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::consume
    - Result::copy_from_slice
    - Result::iter_mut
    - MediaSourceStream::read_byte
    - MediaSourceStream::continguous_buf
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: fn read_double_bytes(&mut self) -> io::Result<[u8; 2]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::continguous_buf
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:274,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:276,1
    - Dst: Result::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:277,1
    - Dst: MediaSourceStream::consume
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:278,1
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:281,1
    - Dst: MediaSourceStream::read_byte
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:282,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:285,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 286
      start: 271
    functionDepth: 17
    functionLinenumber: 271
    functionLinenumberEnd: 286
    functionName: MediaSourceStream::read_triple_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::consume
    - Result::copy_from_slice
    - Result::iter_mut
    - MediaSourceStream::read_byte
    - MediaSourceStream::continguous_buf
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: fn read_triple_bytes(&mut self) -> io::Result<[u8; 3]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::continguous_buf
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:291,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:293,1
    - Dst: Result::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:294,1
    - Dst: MediaSourceStream::consume
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:295,1
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:298,1
    - Dst: MediaSourceStream::read_byte
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:299,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:302,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 303
      start: 288
    functionDepth: 17
    functionLinenumber: 288
    functionLinenumberEnd: 303
    functionName: MediaSourceStream::read_quad_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::consume
    - Result::copy_from_slice
    - Result::iter_mut
    - MediaSourceStream::read_byte
    - MediaSourceStream::continguous_buf
    - Ok
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: fn read_quad_bytes(&mut self) -> io::Result<[u8; 4]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::read
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:307,1
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:312,1
    - Dst: unexpected_eof_error
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:312,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:312,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 313
      start: 305
    functionDepth: 16
    functionLinenumber: 305
    functionLinenumberEnd: 313
    functionName: MediaSourceStream::read_buf
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - Ok
    - unexpected_eof_error
    - MediaSourceStream::read
    - Result::is_empty
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:316,1
    - Dst: MediaSourceStream::read
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:317,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:322,1
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:323,1
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:327,1
    - Dst: unexpected_eof_error
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:327,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:327,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 328
      start: 315
    functionDepth: 16
    functionLinenumber: 315
    functionLinenumberEnd: 328
    functionName: MediaSourceStream::read_buf_exact
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - unexpected_eof_error
    - Result::is_empty
    - MediaSourceStream::read
    - Err
    - Ok
    - Result::kind
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf_exact(&mut self, mut buf: &mut [u8]) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames: []
    argTypes:
    - '&[u8]'
    - usize
    - '&''a mut [u8]'
    constantsTouched: []
    func_position:
      end: 338
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 338
    functionName: MediaSourceStream::scan_bytes_aligned
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: io::Result
    signature: 'fn scan_bytes_aligned<''a>(&mut self,_: &[u8],_: usize,_: &''a mut
      [u8],) -> io::Result<&''a mut [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:344,1
    - Dst: MediaSourceStream::is_seekable
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:347,1
    - Dst: Result::clamp
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:348,1
    - Dst: sub
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:348,1
    - Dst: MediaSourceStream::seek
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:349,1
    - Dst: io::SeekFrom::Current
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:349,1
    - Dst: MediaSourceStream::fetch_or_eof
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:355,1
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:356,1
    - Dst: MediaSourceStream::unread_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:356,1
    - Dst: MediaSourceStream::consume
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:357,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:360,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 41
    argCount: 1
    argNames:
    - count
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 361
      start: 340
    functionDepth: 11
    functionLinenumber: 340
    functionLinenumberEnd: 361
    functionName: MediaSourceStream::ignore_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::unread_buffer_len
    - len
    - cmp::min
    - MediaSourceStream::consume
    - MediaSourceStream::is_seekable
    - Result::clamp
    - io::SeekFrom::Current
    - MediaSourceStream::seek
    - sub
    - Ok
    - MediaSourceStream::fetch_or_eof
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bytes(&mut self, mut count: u64) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::unread_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 365
      start: 363
    functionDepth: 2
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionName: MediaSourceStream::pos
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 4
    functionsReached:
    - MediaSourceStream::unread_buffer_len
    linkageType: ''
    returnType: u64
    signature: fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:370,1
    - Dst: next_power_of_two
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:375,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:380,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:387,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:391,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:392,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:395,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:396,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 64
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 407
      start: 369
    functionDepth: 1
    functionLinenumber: 369
    functionLinenumberEnd: 407
    functionName: MediaSourceStream::ensure_seekback_buffer
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - len
    - Some
    - next_power_of_two
    - into_boxed_slice
    - copy_from_slice
    linkageType: ''
    returnType: void
    signature: 'fn ensure_seekback_buffer(&mut self, len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:414,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 416
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 416
    functionName: MediaSourceStream::unread_buffer_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 5
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: fn unread_buffer_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::unread_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:419,1
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:421,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 422
      start: 418
    functionDepth: 2
    functionLinenumber: 418
    functionLinenumberEnd: 422
    functionName: MediaSourceStream::read_buffer_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 1
    functionsReached:
    - MediaSourceStream::unread_buffer_len
    - len
    - cmp::min
    linkageType: ''
    returnType: usize
    signature: fn read_buffer_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MediaSourceStream::pos
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:425,1
    - Dst: MediaSourceStream::seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:441,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - pos
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 442
      start: 424
    functionDepth: 3
    functionLinenumber: 424
    functionLinenumberEnd: 442
    functionName: MediaSourceStream::seek_buffered
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::seek_buffered_rel
    - MediaSourceStream::pos
    linkageType: ''
    returnType: u64
    signature: 'fn seek_buffered(&mut self, pos: u64) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:446,1
    - Dst: MediaSourceStream::read_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:446,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:447,1
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:450,1
    - Dst: MediaSourceStream::unread_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:450,1
    - Dst: MediaSourceStream::pos
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 37
    argCount: 1
    argNames:
    - delta
    argTypes:
    - isize
    constantsTouched: []
    func_position:
      end: 455
      start: 444
    functionDepth: 3
    functionLinenumber: 444
    functionLinenumberEnd: 455
    functionName: MediaSourceStream::seek_buffered_rel
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 1
    functionsReached:
    - MediaSourceStream::unread_buffer_len
    - len
    - MediaSourceStream::read_buffer_len
    - cmp::min
    - MediaSourceStream::pos
    linkageType: ''
    returnType: u64
    signature: 'fn seek_buffered_rel(&mut self, delta: isize) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::chunks_mut
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:469,1
    - Dst: wrapping_mul
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:470,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:470,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:471,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:471,1
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:471,1
    - Dst: Result::into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:476,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 477
      start: 464
    functionDepth: 2
    functionLinenumber: 464
    functionLinenumberEnd: 477
    functionName: tests::generate_random_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - Result::chunks_mut
    - Result::into_boxed_slice
    - zip
    - to_le_bytes
    - wrapping_add
    - iter_mut
    - wrapping_mul
    linkageType: ''
    returnType: Box
    signature: 'fn generate_random_bytes(len: usize) -> Box<[u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_random_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:481,1
    - Dst: Cursor::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:483,1
    - Dst: '&''static [ProbeFormatData]::clone'
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:483,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:484,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:484,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:484,1
    - Dst: Option::ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:496,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:496,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:501,1
    - Dst: Option::ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:505,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:505,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:510,1
    - Dst: Option::ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:514,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:514,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:519,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 87
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 522
      start: 480
    functionDepth: 10
    functionLinenumber: 480
    functionLinenumberEnd: 522
    functionName: tests::verify_mss_read
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - generate_random_bytes
    - '&''static [ProbeFormatData]::clone'
    - MediaSourceStream::new
    - Box::new
    - Cursor::new
    - Option::ignore_bytes
    - Result::unwrap
    - Default::default
    - chunks_exact
    linkageType: ''
    returnType: void
    signature: fn verify_mss_read()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_random_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:526,1
    - Dst: Cursor::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:528,1
    - Dst: '&''static [ProbeFormatData]::clone'
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:528,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:529,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:529,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:529,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 533
      start: 525
    functionDepth: 10
    functionLinenumber: 525
    functionLinenumberEnd: 533
    functionName: tests::verify_mss_read_to_end
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - generate_random_bytes
    - '&''static [ProbeFormatData]::clone'
    - MediaSourceStream::new
    - Vec::new
    - Box::new
    - Cursor::new
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_mss_read_to_end()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_random_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:537,1
    - Dst: Cursor::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:539,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:540,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:540,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:540,1
    - Dst: Option::ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:545,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:545,1
    - Dst: Option::read_byte
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:550,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:550,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 563
      start: 536
    functionDepth: 10
    functionLinenumber: 536
    functionLinenumberEnd: 563
    functionName: tests::verify_mss_seek_buffered
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - generate_random_bytes
    - Option::read_byte
    - MediaSourceStream::new
    - Box::new
    - Cursor::new
    - Option::ignore_bytes
    - Result::unwrap
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_mss_seek_buffered()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_random_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:567,1
    - Dst: Cursor::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:569,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:570,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:570,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:570,1
    - Dst: Option::ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:573,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 582
      start: 566
    functionDepth: 10
    functionLinenumber: 566
    functionLinenumberEnd: 582
    functionName: tests::verify_reading_be
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - generate_random_bytes
    - MediaSourceStream::new
    - Box::new
    - Cursor::new
    - Option::ignore_bytes
    - Result::unwrap
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_reading_be()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_random_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:586,1
    - Dst: Cursor::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:588,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:589,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:589,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:589,1
    - Dst: Option::ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:591,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/media_source_stream.rs:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 600
      start: 585
    functionDepth: 10
    functionLinenumber: 585
    functionLinenumberEnd: 600
    functionName: tests::verify_reading_le
    functionSourceFile: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
    functionUses: 0
    functionsReached:
    - generate_random_bytes
    - MediaSourceStream::new
    - Box::new
    - Cursor::new
    - Option::ignore_bytes
    - Result::unwrap
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_reading_le()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:19,1
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '[u8; 2]'
    constantsTouched: []
    func_position:
      end: 21
      start: 18
    functionDepth: 1
    functionLinenumber: 18
    functionLinenumberEnd: 21
    functionName: Monitor::process_double_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - Monitor::process_byte
    linkageType: ''
    returnType: void
    signature: 'fn process_double_bytes(&mut self, buf: [u8; 2])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:25,1
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:26,1
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '[u8; 3]'
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: Monitor::process_triple_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - Monitor::process_byte
    linkageType: ''
    returnType: void
    signature: 'fn process_triple_bytes(&mut self, buf: [u8; 3])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:32,1
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:33,1
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:34,1
    - Dst: Monitor::process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '[u8; 4]'
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: Monitor::process_quad_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - Monitor::process_byte
    linkageType: ''
    returnType: void
    signature: 'fn process_quad_bytes(&mut self, buf: [u8; 4])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - inner
    - monitor
    argTypes:
    - B
    - M
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: MonitorStream::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: MonitorStream
    signature: 'pub fn new(inner: B, monitor: M) -> MonitorStream<B, M>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: MonitorStream::inner
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&B'
    signature: pub fn inner(&self) -> &B
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: MonitorStream::inner_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut B'
    signature: pub fn inner_mut(&mut self) -> &mut B
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: MonitorStream::into_inner
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: B
    signature: pub fn into_inner(self) -> B
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: MonitorStream::monitor
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: '&M'
    signature: pub fn monitor(&self) -> &M
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: MonitorStream::monitor_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut M'
    signature: pub fn monitor_mut(&mut self) -> &mut M
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:77,1
    - Dst: process_byte
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:78,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 13
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: MonitorStream::read_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 1
    functionsReached:
    - process_byte
    - read_byte
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_byte(&mut self) -> io::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:84,1
    - Dst: process_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:85,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 87
      start: 83
    functionDepth: 13
    functionLinenumber: 83
    functionLinenumberEnd: 87
    functionName: MonitorStream::read_double_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - Ok
    - read_double_bytes
    - process_double_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_double_bytes(&mut self) -> io::Result<[u8; 2]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_triple_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:91,1
    - Dst: process_triple_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:92,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 13
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: MonitorStream::read_triple_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - process_triple_bytes
    - read_triple_bytes
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_triple_bytes(&mut self) -> io::Result<[u8; 3]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:98,1
    - Dst: process_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:99,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 13
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: MonitorStream::read_quad_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - read_quad_bytes
    - Ok
    - process_quad_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_quad_bytes(&mut self) -> io::Result<[u8; 4]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_buf
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:104,1
    - Dst: process_buf_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:105,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: MonitorStream::read_buf
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - read_buf
    - Ok
    - process_buf_bytes
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:110,1
    - Dst: process_buf_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:111,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 113
      start: 109
    functionDepth: 13
    functionLinenumber: 109
    functionLinenumberEnd: 113
    functionName: MonitorStream::read_buf_exact
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - read_buf_exact
    - process_buf_bytes
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf_exact(&mut self, buf: &mut [u8]) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: scan_bytes_aligned
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:121,1
    - Dst: process_buf_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:122,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - pattern
    - align
    - buf
    argTypes:
    - '&[u8]'
    - usize
    - '&''a mut [u8]'
    constantsTouched: []
    func_position:
      end: 124
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 124
    functionName: MonitorStream::scan_bytes_aligned
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - Ok
    - process_buf_bytes
    - scan_bytes_aligned
    linkageType: ''
    returnType: io::Result
    signature: 'fn scan_bytes_aligned<''a>(&mut self,pattern: &[u8],align: usize,buf:
      &''a mut [u8],) -> io::Result<&''a mut [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - count
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 13
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: MonitorStream::ignore_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - ignore_bytes
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bytes(&mut self, count: u64) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pos
      Src: /src/symphonia/symphonia-core/src/io/monitor_stream.rs:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: MonitorStream::pos
    functionSourceFile: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
    functionUses: 0
    functionsReached:
    - pos
    linkageType: ''
    returnType: u64
    signature: fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::fs::File::metadata
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:59,1
    - Dst: Metadata::is_file
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: std::fs::File::is_seekable
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Metadata::is_file
    - std::fs::File::metadata
    linkageType: ''
    returnType: bool
    signature: fn is_seekable(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::fs::File::metadata
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:70,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:71,1
    - Dst: Metadata::len
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 74
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionName: std::fs::File::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Metadata::len
    - Some
    - std::fs::File::metadata
    linkageType: ''
    returnType: Option
    signature: fn byte_len(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 81
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionName: io::Cursor::is_seekable
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_seekable(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io::Cursor::get_ref
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:86,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:88,1
    - Dst: MediaSourceStream::as_ref
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:88,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 89
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionName: io::Cursor::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - io::Cursor::get_ref
    - len
    - Some
    - MediaSourceStream::as_ref
    linkageType: ''
    returnType: Option
    signature: fn byte_len(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - inner
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: ReadOnlySource::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(inner: R) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: ReadOnlySource::get_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&R'
    signature: pub fn get_ref(&self) -> &R
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: ReadOnlySource::get_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut R'
    signature: pub fn get_mut(&mut self) -> &mut R
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: ReadOnlySource::into_inner
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: R
    signature: pub fn into_inner(self) -> R
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: ReadOnlySource::is_seekable
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_seekable(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: ReadOnlySource::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: fn byte_len(&self) -> Option<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 14
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: ReadOnlySource::read
    functionSourceFile: /src/symphonia/symphonia-core/src/io/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: Err
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:139,1
    - Dst: io::Error::other
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames: []
    argTypes:
    - io::SeekFrom
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: ReadOnlySource::seek
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - io::Error::other
    - Err
    linkageType: ''
    returnType: io::Result
    signature: 'fn seek(&mut self, _: io::SeekFrom) -> io::Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBytes::read_byte
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 13
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: ReadBytes::read_u8
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_byte
    linkageType: ''
    returnType: io::Result
    signature: fn read_u8(&mut self) -> io::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:173,1
    - Dst: ReadBytes::read_byte
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 13
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: ReadBytes::read_i8
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_byte
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_i8(&mut self) -> io::Result<i8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:180,1
    - Dst: u16::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:180,1
    - Dst: ReadBytes::read_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 13
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: ReadBytes::read_u16
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_double_bytes
    - Ok
    - u16::from_le_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_u16(&mut self) -> io::Result<u16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:187,1
    - Dst: i16::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:187,1
    - Dst: ReadBytes::read_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:187,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 188
      start: 186
    functionDepth: 13
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionName: ReadBytes::read_i16
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_double_bytes
    - Ok
    - i16::from_le_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_i16(&mut self) -> io::Result<i16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:194,1
    - Dst: u16::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:194,1
    - Dst: ReadBytes::read_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 13
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: ReadBytes::read_be_u16
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_double_bytes
    - Ok
    - u16::from_be_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_u16(&mut self) -> io::Result<u16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:201,1
    - Dst: i16::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:201,1
    - Dst: ReadBytes::read_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 202
      start: 200
    functionDepth: 13
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionName: ReadBytes::read_be_i16
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_double_bytes
    - Ok
    - i16::from_be_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_i16(&mut self) -> io::Result<i16>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<u32>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:208,1
    - Dst: clone_from_slice
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:209,1
    - Dst: ReadBytes::read_triple_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:209,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:210,1
    - Dst: u32::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 13
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: ReadBytes::read_u24
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 1
    functionsReached:
    - u32::from_le_bytes
    - ReadBytes::read_triple_bytes
    - clone_from_slice
    - mem::size_of::<u32>
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_u24(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:217,1
    - Dst: ReadBytes::read_u24
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 14
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: ReadBytes::read_i24
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBytes::read_u24
    linkageType: ''
    returnType: io::Result
    signature: fn read_i24(&mut self) -> io::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<u32>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:224,1
    - Dst: clone_from_slice
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:225,1
    - Dst: ReadBytes::read_triple_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:225,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:226,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 13
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: ReadBytes::read_be_u24
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 1
    functionsReached:
    - ReadBytes::read_triple_bytes
    - u32::from_be_bytes
    - clone_from_slice
    - mem::size_of::<u32>
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_u24(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:233,1
    - Dst: ReadBytes::read_be_u24
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 14
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: ReadBytes::read_be_i24
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBytes::read_be_u24
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_i24(&mut self) -> io::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:240,1
    - Dst: u32::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:240,1
    - Dst: ReadBytes::read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 241
      start: 239
    functionDepth: 13
    functionLinenumber: 239
    functionLinenumberEnd: 241
    functionName: ReadBytes::read_u32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_quad_bytes
    - Ok
    - u32::from_le_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_u32(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:247,1
    - Dst: i32::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:247,1
    - Dst: ReadBytes::read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 248
      start: 246
    functionDepth: 13
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionName: ReadBytes::read_i32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_quad_bytes
    - Ok
    - i32::from_le_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_i32(&mut self) -> io::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:254,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:254,1
    - Dst: ReadBytes::read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:254,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 255
      start: 253
    functionDepth: 13
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionName: ReadBytes::read_be_u32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_quad_bytes
    - Ok
    - u32::from_be_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_u32(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:261,1
    - Dst: i32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:261,1
    - Dst: ReadBytes::read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 262
      start: 260
    functionDepth: 13
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionName: ReadBytes::read_be_i32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_quad_bytes
    - Ok
    - i32::from_be_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_i32(&mut self) -> io::Result<i32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:268,1
    - Dst: ReadBytes::read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:269,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:270,1
    - Dst: u64::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:270,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 13
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: ReadBytes::read_u64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBytes::read_buf_exact
    - u64::from_le_bytes
    - mem::size_of::<u64>
    linkageType: ''
    returnType: io::Result
    signature: fn read_u64(&mut self) -> io::Result<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<i64>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:277,1
    - Dst: ReadBytes::read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:278,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:279,1
    - Dst: i64::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 280
      start: 276
    functionDepth: 13
    functionLinenumber: 276
    functionLinenumberEnd: 280
    functionName: ReadBytes::read_i64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_buf_exact
    - mem::size_of::<i64>
    - i64::from_le_bytes
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_i64(&mut self) -> io::Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:286,1
    - Dst: ReadBytes::read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:287,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:288,1
    - Dst: u64::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 289
      start: 285
    functionDepth: 13
    functionLinenumber: 285
    functionLinenumberEnd: 289
    functionName: ReadBytes::read_be_u64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBytes::read_buf_exact
    - u64::from_be_bytes
    - mem::size_of::<u64>
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_u64(&mut self) -> io::Result<u64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<i64>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:295,1
    - Dst: ReadBytes::read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:296,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:297,1
    - Dst: i64::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 298
      start: 294
    functionDepth: 13
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionName: ReadBytes::read_be_i64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_buf_exact
    - mem::size_of::<i64>
    - i64::from_be_bytes
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_i64(&mut self) -> io::Result<i64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:304,1
    - Dst: f32::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:304,1
    - Dst: ReadBytes::read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 13
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: ReadBytes::read_f32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_quad_bytes
    - Ok
    - f32::from_le_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_f32(&mut self) -> io::Result<f32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:311,1
    - Dst: f32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:311,1
    - Dst: ReadBytes::read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 312
      start: 310
    functionDepth: 13
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionName: ReadBytes::read_be_f32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - f32::from_be_bytes
    - Ok
    - ReadBytes::read_quad_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_f32(&mut self) -> io::Result<f32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:318,1
    - Dst: ReadBytes::read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:319,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:320,1
    - Dst: f64::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 321
      start: 317
    functionDepth: 13
    functionLinenumber: 317
    functionLinenumberEnd: 321
    functionName: ReadBytes::read_f64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBytes::read_buf_exact
    - f64::from_le_bytes
    - mem::size_of::<u64>
    linkageType: ''
    returnType: io::Result
    signature: fn read_f64(&mut self) -> io::Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:327,1
    - Dst: ReadBytes::read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:328,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:329,1
    - Dst: f64::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:329,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 330
      start: 326
    functionDepth: 13
    functionLinenumber: 326
    functionLinenumberEnd: 330
    functionName: ReadBytes::read_be_f64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBytes::read_buf_exact
    - f64::from_be_bytes
    - mem::size_of::<u64>
    linkageType: ''
    returnType: io::Result
    signature: fn read_be_f64(&mut self) -> io::Result<f64>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBytes::read_buf
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:336,1
    - Dst: Result::truncate
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:337,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:338,1
    - Dst: Result::into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 339
      start: 334
    functionDepth: 2
    functionLinenumber: 334
    functionLinenumberEnd: 339
    functionName: ReadBytes::read_boxed_slice
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBytes::read_buf
    - Result::truncate
    - Result::into_boxed_slice
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_boxed_slice(&mut self, len: usize) -> io::Result<Box<[u8]>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBytes::read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:345,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:346,1
    - Dst: Result::into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:346,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 347
      start: 343
    functionDepth: 13
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionName: ReadBytes::read_boxed_slice_exact
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::read_buf_exact
    - Ok
    - Result::into_boxed_slice
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_boxed_slice_exact(&mut self, len: usize) -> io::Result<Box<[u8]>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBytes::scan_bytes_aligned
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - pattern
    - buf
    argTypes:
    - '&[u8]'
    - '&''a mut [u8]'
    constantsTouched: []
    func_position:
      end: 354
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 354
    functionName: ReadBytes::scan_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ReadBytes::scan_bytes_aligned
    linkageType: ''
    returnType: io::Result
    signature: 'fn scan_bytes<''a>(&mut self, pattern: &[u8], buf: &''a mut [u8])
      -> io::Result<&''a mut [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_byte
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 376
      start: 374
    functionDepth: 13
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionName: '&mut R::read_byte'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - read_byte
    linkageType: ''
    returnType: io::Result
    signature: fn read_byte(&mut self) -> io::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_double_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 381
      start: 379
    functionDepth: 13
    functionLinenumber: 379
    functionLinenumberEnd: 381
    functionName: '&mut R::read_double_bytes'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - read_double_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_double_bytes(&mut self) -> io::Result<[u8; 2]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_triple_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 386
      start: 384
    functionDepth: 13
    functionLinenumber: 384
    functionLinenumberEnd: 386
    functionName: '&mut R::read_triple_bytes'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - read_triple_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_triple_bytes(&mut self) -> io::Result<[u8; 3]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_quad_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 391
      start: 389
    functionDepth: 13
    functionLinenumber: 389
    functionLinenumberEnd: 391
    functionName: '&mut R::read_quad_bytes'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - read_quad_bytes
    linkageType: ''
    returnType: io::Result
    signature: fn read_quad_bytes(&mut self) -> io::Result<[u8; 4]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_buf
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 396
      start: 394
    functionDepth: 2
    functionLinenumber: 394
    functionLinenumberEnd: 396
    functionName: '&mut R::read_buf'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - read_buf
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf(&mut self, buf: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:400,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 401
      start: 399
    functionDepth: 13
    functionLinenumber: 399
    functionLinenumberEnd: 401
    functionName: '&mut R::read_buf_exact'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - read_buf_exact
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf_exact(&mut self, buf: &mut [u8]) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: scan_bytes_aligned
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - pattern
    - align
    - buf
    argTypes:
    - '&[u8]'
    - usize
    - '&''a mut [u8]'
    constantsTouched: []
    func_position:
      end: 411
      start: 404
    functionDepth: 2
    functionLinenumber: 404
    functionLinenumberEnd: 411
    functionName: '&mut R::scan_bytes_aligned'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - scan_bytes_aligned
    linkageType: ''
    returnType: io::Result
    signature: 'fn scan_bytes_aligned<''a>(&mut self,pattern: &[u8],align: usize,buf:
      &''a mut [u8],) -> io::Result<&''a mut [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ignore_bytes
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - count
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 416
      start: 414
    functionDepth: 13
    functionLinenumber: 414
    functionLinenumberEnd: 416
    functionName: '&mut R::ignore_bytes'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ignore_bytes
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bytes(&mut self, count: u64) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pos
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: '&mut R::pos'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - pos
    linkageType: ''
    returnType: u64
    signature: fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ensure_seekback_buffer
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 427
      start: 425
    functionDepth: 2
    functionLinenumber: 425
    functionLinenumberEnd: 427
    functionName: '&mut S::ensure_seekback_buffer'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - ensure_seekback_buffer
    linkageType: ''
    returnType: void
    signature: 'fn ensure_seekback_buffer(&mut self, len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unread_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 431
      start: 429
    functionDepth: 2
    functionLinenumber: 429
    functionLinenumberEnd: 431
    functionName: '&mut S::unread_buffer_len'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - unread_buffer_len
    linkageType: ''
    returnType: usize
    signature: fn unread_buffer_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_buffer_len
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 435
      start: 433
    functionDepth: 2
    functionLinenumber: 433
    functionLinenumberEnd: 435
    functionName: '&mut S::read_buffer_len'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - read_buffer_len
    linkageType: ''
    returnType: usize
    signature: fn read_buffer_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: seek_buffered
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pos
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 439
      start: 437
    functionDepth: 2
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionName: '&mut S::seek_buffered'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - seek_buffered
    linkageType: ''
    returnType: u64
    signature: 'fn seek_buffered(&mut self, pos: u64) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - delta
    argTypes:
    - isize
    constantsTouched: []
    func_position:
      end: 443
      start: 441
    functionDepth: 2
    functionLinenumber: 441
    functionLinenumberEnd: 443
    functionName: '&mut S::seek_buffered_rel'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - seek_buffered_rel
    linkageType: ''
    returnType: u64
    signature: 'fn seek_buffered_rel(&mut self, delta: isize) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SeekBuffered::seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - delta
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 480
      start: 477
    functionDepth: 2
    functionLinenumber: 477
    functionLinenumberEnd: 480
    functionName: SeekBuffered::seek_buffered_rev
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - SeekBuffered::seek_buffered_rel
    linkageType: ''
    returnType: void
    signature: 'fn seek_buffered_rev(&mut self, delta: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: byte_len
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 486
      start: 484
    functionDepth: 1
    functionLinenumber: 484
    functionLinenumberEnd: 486
    functionName: '&mut F::byte_len'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - byte_len
    linkageType: ''
    returnType: u64
    signature: fn byte_len(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bytes_read
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 490
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 490
    functionName: '&mut F::bytes_read'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - bytes_read
    linkageType: ''
    returnType: u64
    signature: fn bytes_read(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bytes_available
      Src: /src/symphonia/symphonia-core/src/io/mod.rs:493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 494
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 494
    functionName: '&mut F::bytes_available'
    functionSourceFile: /src/symphonia/symphonia-core/src/io/mod.rs
    functionUses: 0
    functionsReached:
    - bytes_available
    linkageType: ''
    returnType: u64
    signature: fn bytes_available(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:15,1
    - Dst: io::Error::other
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 16
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 16
    functionName: end_of_bitstream_error
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 4
    functionsReached:
    - io::Error::other
    - Err
    linkageType: ''
    returnType: io::Result
    signature: fn end_of_bitstream_error<T>() -> io::Result<T>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:26,1
    - Dst: io::Error::other
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - desc
    argTypes:
    - '&''static str'
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: vlc::codebook_error
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - io::Error::other
    - Err
    linkageType: ''
    returnType: io::Result
    signature: 'fn codebook_error<T>(desc: &''static str) -> io::Result<T>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:506,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 508
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 508
    functionName: ReadBitsLtr::realign
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::num_bits_left
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: void
    signature: fn realign(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:513,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:514,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:518,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:519,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:520,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:525,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:526,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:530,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 1
    argNames:
    - num_bits
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 531
      start: 512
    functionDepth: 15
    functionLinenumber: 512
    functionLinenumberEnd: 531
    functionName: ReadBitsLtr::ignore_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 1
    functionsReached:
    - Ok
    - ReadBitsLtr::num_bits_left
    - ReadBitsLtr::consume_bits
    - ReadBitsLtr::fetch_bits
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bits(&mut self, mut num_bits: u32) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 537
      start: 535
    functionDepth: 16
    functionLinenumber: 535
    functionLinenumberEnd: 537
    functionName: ReadBitsLtr::ignore_bit
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::ignore_bits
    linkageType: ''
    returnType: io::Result
    signature: fn ignore_bit(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:542,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:543,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:546,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:548,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 550
      start: 541
    functionDepth: 15
    functionLinenumber: 541
    functionLinenumberEnd: 550
    functionName: ReadBitsLtr::read_bool
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::get_bits
    - ReadBitsLtr::fetch_bits
    - ReadBitsLtr::num_bits_left
    - Ok
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_bool(&mut self) -> io::Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:555,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:556,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:559,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:561,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:563,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 564
      start: 554
    functionDepth: 15
    functionLinenumber: 554
    functionLinenumberEnd: 564
    functionName: ReadBitsLtr::read_bit
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::get_bits
    - ReadBitsLtr::fetch_bits
    - ReadBitsLtr::num_bits_left
    - Ok
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_bit(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:574,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:576,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:577,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:579,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:583,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:586,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:588,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 31
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 589
      start: 568
    functionDepth: 15
    functionLinenumber: 568
    functionLinenumberEnd: 589
    functionName: ReadBitsLtr::read_bits_leq32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 1
    functionsReached:
    - ReadBitsLtr::get_bits
    - ReadBitsLtr::fetch_bits
    - ReadBitsLtr::num_bits_left
    - Ok
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq32(&mut self, mut bit_width: u32) -> io::Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::read_bits_leq32
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:595,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:596,1
    - Dst: sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 16
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: ReadBitsLtr::read_bits_leq32_signed
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::read_bits_leq32
    - sign_extend_leq32_to_i32
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq32_signed(&mut self, bit_width: u32) -> io::Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:609,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:614,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:616,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:617,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:619,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:621,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:625,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:626,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:628,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 36
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 630
      start: 601
    functionDepth: 15
    functionLinenumber: 601
    functionLinenumberEnd: 630
    functionName: ReadBitsLtr::read_bits_leq64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 1
    functionsReached:
    - ReadBitsLtr::get_bits
    - ReadBitsLtr::fetch_bits
    - ReadBitsLtr::num_bits_left
    - Ok
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq64(&mut self, mut bit_width: u32) -> io::Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::read_bits_leq64
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:636,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:637,1
    - Dst: sign_extend_leq64_to_i64
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 638
      start: 635
    functionDepth: 16
    functionLinenumber: 635
    functionLinenumberEnd: 638
    functionName: ReadBitsLtr::read_bits_leq64_signed
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - Ok
    - ReadBitsLtr::read_bits_leq64
    - sign_extend_leq64_to_i64
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq64_signed(&mut self, bit_width: u32) -> io::Result<i64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:647,1
    - Dst: u64::leading_zeros
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:647,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:649,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:652,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:653,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:662,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:663,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:670,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 671
      start: 642
    functionDepth: 15
    functionLinenumber: 642
    functionLinenumberEnd: 671
    functionName: ReadBitsLtr::read_unary_zeros
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::fetch_bits
    - Ok
    - u64::leading_zeros
    - ReadBitsLtr::num_bits_left
    - ReadBitsLtr::get_bits
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_unary_zeros(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:680,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:681,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:681,1
    - Dst: u64::leading_zeros
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:681,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:686,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:698,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:699,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:704,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:707,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - limit
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 708
      start: 675
    functionDepth: 15
    functionLinenumber: 675
    functionLinenumberEnd: 708
    functionName: ReadBitsLtr::read_unary_zeros_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::fetch_bits
    - Ok
    - u64::leading_zeros
    - ReadBitsLtr::num_bits_left
    - std::cmp::min
    - ReadBitsLtr::get_bits
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_unary_zeros_capped(&mut self, mut limit: u32) -> io::Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:717,1
    - Dst: u64::leading_ones
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:717,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:719,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:720,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:721,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:726,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:727,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:733,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 734
      start: 712
    functionDepth: 15
    functionLinenumber: 712
    functionLinenumberEnd: 734
    functionName: ReadBitsLtr::read_unary_ones
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::fetch_bits
    - Ok
    - ReadBitsLtr::num_bits_left
    - ReadBitsLtr::get_bits
    - u64::leading_ones
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_unary_ones(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:743,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:744,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:744,1
    - Dst: u64::leading_ones
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:744,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:748,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:756,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:757,1
    - Dst: ReadBitsLtr::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:762,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:765,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - limit
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 766
      start: 738
    functionDepth: 15
    functionLinenumber: 738
    functionLinenumberEnd: 766
    functionName: ReadBitsLtr::read_unary_ones_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsLtr::fetch_bits
    - Ok
    - ReadBitsLtr::num_bits_left
    - std::cmp::min
    - ReadBitsLtr::get_bits
    - u64::leading_ones
    - ReadBitsLtr::consume_bits
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_unary_ones_capped(&mut self, mut limit: u32) -> io::Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:778,1
    - Dst: ReadBitsLtr::fetch_bits_partial
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:779,1
    - Dst: ReadBitsLtr::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:782,1
    - Dst: Option::into
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:793,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:796,1
    - Dst: EbmlError::get
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:796,1
    - Dst: ReadBitsLtr::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:798,1
    - Dst: end_of_bitstream_error
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:799,1
    - Dst: ReadBitsLtr::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:802,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:804,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 48
    argCount: 1
    argNames:
    - codebook
    argTypes:
    - '&vlc::Codebook<E>'
    constantsTouched: []
    func_position:
      end: 808
      start: 771
    functionDepth: 14
    functionLinenumber: 771
    functionLinenumberEnd: 808
    functionName: ReadBitsLtr::read_codebook
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - end_of_bitstream_error
    - Ok
    - ReadBitsLtr::fetch_bits_partial
    - ReadBitsLtr::num_bits_left
    - EbmlError::get
    - Option::into
    - ReadBitsLtr::get_bits
    - ReadBitsLtr::consume_bits
    - u32::from
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_codebook<E: vlc::CodebookEntry>(&mut self,codebook: &vlc::Codebook<E>,)
      -> io::Result<(E::ValueType, u32)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&''a mut B'
    constantsTouched: []
    func_position:
      end: 826
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 826
    functionName: BitStreamLtr::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(reader: &''a mut B) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:832,1
    - Dst: read_u8
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:832,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:834,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 835
      start: 831
    functionDepth: 14
    functionLinenumber: 831
    functionLinenumberEnd: 835
    functionName: BitStreamLtr::fetch_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - Ok
    - read_u8
    - u64::from
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 840
      start: 838
    functionDepth: 0
    functionLinenumber: 838
    functionLinenumberEnd: 840
    functionName: BitStreamLtr::fetch_bits_partial
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits_partial(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 845
      start: 843
    functionDepth: 0
    functionLinenumber: 843
    functionLinenumberEnd: 845
    functionName: BitStreamLtr::get_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn get_bits(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 850
      start: 848
    functionDepth: 0
    functionLinenumber: 848
    functionLinenumberEnd: 850
    functionName: BitStreamLtr::num_bits_left
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: fn num_bits_left(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 856
      start: 853
    functionDepth: 0
    functionLinenumber: 853
    functionLinenumberEnd: 856
    functionName: BitStreamLtr::consume_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn consume_bits(&mut self, num: u32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&''a [u8]'
    constantsTouched: []
    func_position:
      end: 875
      start: 873
    functionDepth: 0
    functionLinenumber: 873
    functionLinenumberEnd: 875
    functionName: BitReaderLtr::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 23
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(buf: &''a [u8]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:885,1
    - Dst: take
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:885,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:886,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:893,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 894
      start: 880
    functionDepth: 11
    functionLinenumber: 880
    functionLinenumberEnd: 894
    functionName: BitReaderLtr::fetch_bits_partial
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - Ok
    - take
    - iter
    - u64::from
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits_partial(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:897,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:897,1
    - Dst: std::mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:897,1
    - Dst: end_of_bitstream_error
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:900,1
    - Dst: std::mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:903,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:905,1
    - Dst: u64::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:909,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:912,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 913
      start: 896
    functionDepth: 1
    functionLinenumber: 896
    functionLinenumberEnd: 913
    functionName: BitReaderLtr::fetch_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - end_of_bitstream_error
    - len
    - u64::from_be_bytes
    - std::cmp::min
    - copy_from_slice
    - Ok
    - std::mem::size_of::<u64>
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 918
      start: 916
    functionDepth: 0
    functionLinenumber: 916
    functionLinenumberEnd: 918
    functionName: BitReaderLtr::get_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn get_bits(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 923
      start: 921
    functionDepth: 0
    functionLinenumber: 921
    functionLinenumberEnd: 923
    functionName: BitReaderLtr::num_bits_left
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: fn num_bits_left(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 929
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 929
    functionName: BitReaderLtr::consume_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn consume_bits(&mut self, num: u32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:936,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 937
      start: 935
    functionDepth: 1
    functionLinenumber: 935
    functionLinenumberEnd: 937
    functionName: BitReaderLtr::bits_left
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - len
    - u64::from
    linkageType: ''
    returnType: u64
    signature: fn bits_left(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:945,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 947
      start: 944
    functionDepth: 1
    functionLinenumber: 944
    functionLinenumberEnd: 947
    functionName: ReadBitsRtl::realign
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::num_bits_left
    linkageType: ''
    returnType: void
    signature: fn realign(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:952,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:953,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:957,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:958,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:959,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:964,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:965,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:969,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 1
    argNames:
    - num_bits
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 970
      start: 951
    functionDepth: 15
    functionLinenumber: 951
    functionLinenumberEnd: 970
    functionName: ReadBitsRtl::ignore_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 1
    functionsReached:
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    - Ok
    - ReadBitsRtl::num_bits_left
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bits(&mut self, mut num_bits: u32) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 976
      start: 974
    functionDepth: 16
    functionLinenumber: 974
    functionLinenumberEnd: 976
    functionName: ReadBitsRtl::ignore_bit
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::ignore_bits
    linkageType: ''
    returnType: io::Result
    signature: fn ignore_bit(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:981,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:982,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:985,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:987,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:988,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 989
      start: 980
    functionDepth: 15
    functionLinenumber: 980
    functionLinenumberEnd: 989
    functionName: ReadBitsRtl::read_bool
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::get_bits
    - Ok
    - ReadBitsRtl::num_bits_left
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_bool(&mut self) -> io::Result<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:994,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:995,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:998,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1000,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1002,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 993
    functionDepth: 15
    functionLinenumber: 993
    functionLinenumberEnd: 1003
    functionName: ReadBitsRtl::read_bit
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::get_bits
    - Ok
    - ReadBitsRtl::num_bits_left
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_bit(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1010,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1013,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1014,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1016,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1018,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1021,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1026,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 32
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1027
      start: 1007
    functionDepth: 15
    functionLinenumber: 1007
    functionLinenumberEnd: 1027
    functionName: ReadBitsRtl::read_bits_leq32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 1
    functionsReached:
    - ReadBitsRtl::get_bits
    - ReadBitsRtl::num_bits_left
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq32(&mut self, bit_width: u32) -> io::Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::read_bits_leq32
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1033,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1034,1
    - Dst: sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1034,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1035
      start: 1032
    functionDepth: 16
    functionLinenumber: 1032
    functionLinenumberEnd: 1035
    functionName: ReadBitsRtl::read_bits_leq32_signed
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - Ok
    - sign_extend_leq32_to_i32
    - ReadBitsRtl::read_bits_leq32
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq32_signed(&mut self, bit_width: u32) -> io::Result<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1047,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1050,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1053,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1054,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1056,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1060,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1064,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1065,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1070,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 42
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1072
      start: 1039
    functionDepth: 15
    functionLinenumber: 1039
    functionLinenumberEnd: 1072
    functionName: ReadBitsRtl::read_bits_leq64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 1
    functionsReached:
    - ReadBitsRtl::get_bits
    - ReadBitsRtl::num_bits_left
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq64(&mut self, bit_width: u32) -> io::Result<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::read_bits_leq64
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1078,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1079,1
    - Dst: sign_extend_leq64_to_i64
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1079,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bit_width
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1080
      start: 1077
    functionDepth: 16
    functionLinenumber: 1077
    functionLinenumberEnd: 1080
    functionName: ReadBitsRtl::read_bits_leq64_signed
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::read_bits_leq64
    - Ok
    - sign_extend_leq64_to_i64
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_bits_leq64_signed(&mut self, bit_width: u32) -> io::Result<i64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1089,1
    - Dst: u64::trailing_zeros
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1089,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1091,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1094,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1095,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1104,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1105,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1112,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1084
    functionDepth: 15
    functionLinenumber: 1084
    functionLinenumberEnd: 1113
    functionName: ReadBitsRtl::read_unary_zeros
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::get_bits
    - ReadBitsRtl::num_bits_left
    - Ok
    - u64::trailing_zeros
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_unary_zeros(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1122,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1123,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1123,1
    - Dst: u64::trailing_zeros
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1123,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1128,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1140,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1141,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1146,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1149,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - limit
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1150
      start: 1117
    functionDepth: 15
    functionLinenumber: 1117
    functionLinenumberEnd: 1150
    functionName: ReadBitsRtl::read_unary_zeros_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::get_bits
    - ReadBitsRtl::num_bits_left
    - Ok
    - u64::trailing_zeros
    - std::cmp::min
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_unary_zeros_capped(&mut self, mut limit: u32) -> io::Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1159,1
    - Dst: u64::trailing_ones
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1159,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1161,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1162,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1163,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1168,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1169,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1175,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1154
    functionDepth: 15
    functionLinenumber: 1154
    functionLinenumberEnd: 1176
    functionName: ReadBitsRtl::read_unary_ones
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::get_bits
    - ReadBitsRtl::num_bits_left
    - Ok
    - u64::trailing_ones
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    linkageType: ''
    returnType: io::Result
    signature: fn read_unary_ones(&mut self) -> io::Result<u32>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1185,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1186,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1186,1
    - Dst: u64::trailing_ones
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1186,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1190,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1198,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1199,1
    - Dst: ReadBitsRtl::fetch_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1204,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1207,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - limit
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1208
      start: 1180
    functionDepth: 15
    functionLinenumber: 1180
    functionLinenumberEnd: 1208
    functionName: ReadBitsRtl::read_unary_ones_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - ReadBitsRtl::get_bits
    - ReadBitsRtl::num_bits_left
    - Ok
    - u64::trailing_ones
    - std::cmp::min
    - ReadBitsRtl::consume_bits
    - ReadBitsRtl::fetch_bits
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_unary_ones_capped(&mut self, mut limit: u32) -> io::Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1218,1
    - Dst: ReadBitsRtl::fetch_bits_partial
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1219,1
    - Dst: ReadBitsRtl::get_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1222,1
    - Dst: Option::into
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1233,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1236,1
    - Dst: EbmlError::get
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1236,1
    - Dst: ReadBitsRtl::num_bits_left
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1238,1
    - Dst: end_of_bitstream_error
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1239,1
    - Dst: ReadBitsRtl::consume_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1242,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1244,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 50
    argCount: 1
    argNames:
    - codebook
    argTypes:
    - '&vlc::Codebook<E>'
    constantsTouched: []
    func_position:
      end: 1248
      start: 1211
    functionDepth: 14
    functionLinenumber: 1211
    functionLinenumberEnd: 1248
    functionName: ReadBitsRtl::read_codebook
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - end_of_bitstream_error
    - ReadBitsRtl::get_bits
    - ReadBitsRtl::num_bits_left
    - ReadBitsRtl::fetch_bits_partial
    - EbmlError::get
    - ReadBitsRtl::consume_bits
    - Option::into
    - Ok
    - u32::from
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_codebook<E: vlc::CodebookEntry>(&mut self,codebook: &vlc::Codebook<E>,)
      -> io::Result<(E::ValueType, u32)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&''a mut B'
    constantsTouched: []
    func_position:
      end: 1266
      start: 1264
    functionDepth: 0
    functionLinenumber: 1264
    functionLinenumberEnd: 1266
    functionName: BitStreamRtl::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(reader: &''a mut B) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1272,1
    - Dst: read_u8
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1272,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1275
      start: 1271
    functionDepth: 14
    functionLinenumber: 1271
    functionLinenumberEnd: 1275
    functionName: BitStreamRtl::fetch_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - Ok
    - read_u8
    - u64::from
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1280
      start: 1278
    functionDepth: 0
    functionLinenumber: 1278
    functionLinenumberEnd: 1280
    functionName: BitStreamRtl::fetch_bits_partial
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits_partial(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1283
    functionDepth: 0
    functionLinenumber: 1283
    functionLinenumberEnd: 1285
    functionName: BitStreamRtl::get_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn get_bits(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1288
    functionDepth: 0
    functionLinenumber: 1288
    functionLinenumberEnd: 1290
    functionName: BitStreamRtl::num_bits_left
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: fn num_bits_left(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1296
      start: 1293
    functionDepth: 0
    functionLinenumber: 1293
    functionLinenumberEnd: 1296
    functionName: BitStreamRtl::consume_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn consume_bits(&mut self, num: u32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&''a [u8]'
    constantsTouched: []
    func_position:
      end: 1315
      start: 1313
    functionDepth: 0
    functionLinenumber: 1313
    functionLinenumberEnd: 1315
    functionName: BitReaderRtl::new
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(buf: &''a [u8]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1325,1
    - Dst: take
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1325,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1326,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1320
    functionDepth: 11
    functionLinenumber: 1320
    functionLinenumberEnd: 1334
    functionName: BitReaderRtl::fetch_bits_partial
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - Ok
    - take
    - iter
    - u64::from
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits_partial(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1337,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1337,1
    - Dst: std::mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1337,1
    - Dst: end_of_bitstream_error
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1340,1
    - Dst: std::mem::size_of::<u64>
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1343,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1345,1
    - Dst: u64::from_le_bytes
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1349,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1336
    functionDepth: 1
    functionLinenumber: 1336
    functionLinenumberEnd: 1353
    functionName: BitReaderRtl::fetch_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - end_of_bitstream_error
    - len
    - u64::from_le_bytes
    - std::cmp::min
    - copy_from_slice
    - Ok
    - std::mem::size_of::<u64>
    linkageType: ''
    returnType: io::Result
    signature: fn fetch_bits(&mut self) -> io::Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1356
    functionDepth: 0
    functionLinenumber: 1356
    functionLinenumberEnd: 1358
    functionName: BitReaderRtl::get_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn get_bits(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1363
      start: 1361
    functionDepth: 0
    functionLinenumber: 1361
    functionLinenumberEnd: 1363
    functionName: BitReaderRtl::num_bits_left
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: fn num_bits_left(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 1369
      start: 1366
    functionDepth: 0
    functionLinenumber: 1366
    functionLinenumberEnd: 1369
    functionName: BitReaderRtl::consume_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn consume_bits(&mut self, num: u32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1376,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1377
      start: 1375
    functionDepth: 1
    functionLinenumber: 1375
    functionLinenumberEnd: 1377
    functionName: BitReaderRtl::bits_left
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - len
    - u64::from
    linkageType: ''
    returnType: u64
    signature: fn bits_left(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1391,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1399,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1399,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1405,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1405,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1409,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1409,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1418,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1418,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1426,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1430,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1390
    functionDepth: 16
    functionLinenumber: 1390
    functionLinenumberEnd: 1448
    functionName: tests::verify_bitstreamltr_ignore_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - i32::ignore_bits
    - BitReaderLtr::new
    - io::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_ignore_bits()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1454,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1452
    functionDepth: 1
    functionLinenumber: 1452
    functionLinenumberEnd: 1469
    functionName: tests::verify_bitstreamltr_read_bool
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_bool()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1474,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1489
      start: 1472
    functionDepth: 1
    functionLinenumber: 1472
    functionLinenumberEnd: 1489
    functionName: tests::verify_bitstreamltr_read_bit
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_bit()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1494,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1502,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1507,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1513,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1523
      start: 1492
    functionDepth: 1
    functionLinenumber: 1492
    functionLinenumberEnd: 1523
    functionName: tests::verify_bitstreamltr_read_bits_leq32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_bits_leq32()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1528,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1540,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1545,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1554
      start: 1526
    functionDepth: 1
    functionLinenumber: 1526
    functionLinenumberEnd: 1554
    functionName: tests::verify_bitstreamltr_read_bits_leq64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_bits_leq64()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1560,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1574,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1579,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1557
    functionDepth: 1
    functionLinenumber: 1557
    functionLinenumberEnd: 1587
    functionName: tests::verify_bitstreamltr_read_unary_zeros
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_unary_zeros()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1592,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1606
      start: 1590
    functionDepth: 1
    functionLinenumber: 1590
    functionLinenumberEnd: 1606
    functionName: tests::verify_bitstreamltr_read_unary_zeros_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_unary_zeros_capped()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1612,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1626,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1631,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1609
    functionDepth: 1
    functionLinenumber: 1609
    functionLinenumberEnd: 1639
    functionName: tests::verify_bitstreamltr_read_unary_ones
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_unary_ones()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1644,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1650,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1673
      start: 1642
    functionDepth: 1
    functionLinenumber: 1642
    functionLinenumberEnd: 1673
    functionName: tests::verify_bitstreamltr_read_unary_ones_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_unary_ones_capped()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CodebookBuilder::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1678,1
    - Dst: make::<Entry8x8>
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1679,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1676
    functionDepth: 10
    functionLinenumber: 1676
    functionLinenumberEnd: 1682
    functionName: tests::verify_codebook_builder_make_empty
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - CodebookBuilder::new
    - make::<Entry8x8>
    linkageType: ''
    returnType: void
    signature: fn verify_codebook_builder_make_empty()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_vec
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1737,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1738,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1738,1
    - Dst: Option::reverse_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1738,1
    - Dst: collect
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1738,1
    - Dst: CodebookBuilder::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1742,1
    - Dst: make::<Entry8x8>
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1743,1
    - Dst: unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 1
    argNames:
    - bit_order
    argTypes:
    - BitOrder
    constantsTouched: []
    func_position:
      end: 1746
      start: 1684
    functionDepth: 11
    functionLinenumber: 1684
    functionLinenumberEnd: 1746
    functionName: tests::generate_codebook
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - to_vec
    - unwrap
    - iter
    - map
    - collect
    - CodebookBuilder::new
    - Option::reverse_bits
    - make::<Entry8x8>
    linkageType: ''
    returnType: (Codebook
    signature: 'fn generate_codebook(bit_order: BitOrder) -> (Codebook<Entry8x8>,
      Vec<u8>, &''static str)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1750,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1752,1
    - Dst: bool::len
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1755,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1755,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1755,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1755,1
    - Dst: collect
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1758
      start: 1749
    functionDepth: 12
    functionLinenumber: 1749
    functionLinenumberEnd: 1758
    functionName: tests::verify_bitstreamltr_read_codebook
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - bool::len
    - i32::read_codebook
    - map
    - collect
    - generate_codebook
    - BitReaderLtr::new
    - io::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamltr_read_codebook()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1765,1
    - Dst: SmallRng::seed_from_u64
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1768,1
    - Dst: fill_bytes
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1771,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1773,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1775,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1779
      start: 1761
    functionDepth: 12
    functionLinenumber: 1761
    functionLinenumberEnd: 1779
    functionName: tests::fuzz_bitstreamltr_read_codebook
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - fill_bytes
    - i32::read_codebook
    - SmallRng::seed_from_u64
    - generate_codebook
    - BitReaderLtr::new
    linkageType: ''
    returnType: void
    signature: fn fuzz_bitstreamltr_read_codebook()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1786,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1794,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1794,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1800,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1800,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1804,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1804,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1813,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1813,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1821,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1825,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1843
      start: 1785
    functionDepth: 16
    functionLinenumber: 1785
    functionLinenumberEnd: 1843
    functionName: tests::verify_bitstreamrtl_ignore_bits
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - i32::ignore_bits
    - io::Result::unwrap
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_ignore_bits()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1849,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1861,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1847
    functionDepth: 1
    functionLinenumber: 1847
    functionLinenumberEnd: 1864
    functionName: tests::verify_bitstreamrtl_read_bool
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_bool()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1869,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1881,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1884
      start: 1867
    functionDepth: 1
    functionLinenumber: 1867
    functionLinenumberEnd: 1884
    functionName: tests::verify_bitstreamrtl_read_bit
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_bit()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1889,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1897,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1902,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1908,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1915,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1918
      start: 1887
    functionDepth: 1
    functionLinenumber: 1887
    functionLinenumberEnd: 1918
    functionName: tests::verify_bitstreamrtl_read_bits_leq32
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_bits_leq32()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1923,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1939,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1944,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1953
      start: 1921
    functionDepth: 1
    functionLinenumber: 1921
    functionLinenumberEnd: 1953
    functionName: tests::verify_bitstreamrtl_read_bits_leq64
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_bits_leq64()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1959,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1973,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1978,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1983,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1956
    functionDepth: 1
    functionLinenumber: 1956
    functionLinenumberEnd: 1986
    functionName: tests::verify_bitstreamrtl_read_unary_zeros
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_unary_zeros()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1991,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:1997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2007
      start: 1989
    functionDepth: 1
    functionLinenumber: 1989
    functionLinenumberEnd: 2007
    functionName: tests::verify_bitstreamrtl_read_unary_zeros_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_unary_zeros_capped()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2013,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2027,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2032,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2010
    functionDepth: 1
    functionLinenumber: 2010
    functionLinenumberEnd: 2040
    functionName: tests::verify_bitstreamrtl_read_unary_ones
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_unary_ones()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2045,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2051,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2043
    functionDepth: 1
    functionLinenumber: 2043
    functionLinenumberEnd: 2061
    functionName: tests::verify_bitstreamrtl_read_unary_ones_capped
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - BitReaderRtl::new
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_unary_ones_capped()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2067,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2069,1
    - Dst: bool::len
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2072,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2072,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2072,1
    - Dst: io::Result::unwrap
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2072,1
    - Dst: collect
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2072,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 2064
    functionDepth: 12
    functionLinenumber: 2064
    functionLinenumberEnd: 2075
    functionName: tests::verify_bitstreamrtl_read_codebook
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - bool::len
    - i32::read_codebook
    - map
    - BitReaderRtl::new
    - collect
    - generate_codebook
    - io::Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn verify_bitstreamrtl_read_codebook()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2082,1
    - Dst: SmallRng::seed_from_u64
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2085,1
    - Dst: fill_bytes
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2088,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2090,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-core/src/io/bit.rs:2092,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 2096
      start: 2078
    functionDepth: 12
    functionLinenumber: 2078
    functionLinenumberEnd: 2096
    functionName: tests::fuzz_bitstreamrtl_read_codebook
    functionSourceFile: /src/symphonia/symphonia-core/src/io/bit.rs
    functionUses: 0
    functionsReached:
    - fill_bytes
    - i32::read_codebook
    - SmallRng::seed_from_u64
    - BitReaderRtl::new
    - generate_codebook
    linkageType: ''
    returnType: void
    signature: fn fuzz_bitstreamrtl_read_codebook()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:141,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:142,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 15
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: InnerCodecRegistry::default
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:153,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:153,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:153,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:153,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - id
    argTypes:
    - '&C'
    constantsTouched: []
    func_position:
      end: 154
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionName: InnerCodecRegistry::get
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - get
    - or_else
    linkageType: ''
    returnType: Option
    signature: 'fn get(&self, id: &C) -> Option<&R>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:158,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:159,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - tier
    - id
    argTypes:
    - Tier
    - '&C'
    constantsTouched: []
    func_position:
      end: 162
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 162
    functionName: InnerCodecRegistry::get_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: Option
    signature: 'fn get_at_tier(&self, tier: Tier, id: &C) -> Option<&R>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:166,1
    - Dst: insert
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:167,1
    - Dst: insert
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - tier
    - id
    - reg
    argTypes:
    - Tier
    - C
    - R
    constantsTouched: []
    func_position:
      end: 170
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 170
    functionName: InnerCodecRegistry::register_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - insert
    linkageType: ''
    returnType: Option
    signature: 'fn register_at_tier(&mut self, tier: Tier, id: C, reg: R) -> Option<R>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:188,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:190,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 194
      start: 186
    functionDepth: 15
    functionLinenumber: 186
    functionLinenumberEnd: 194
    functionName: CodecRegistry::new
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - id
    argTypes:
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: CodecRegistry::get_audio_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 2
    functionsReached:
    - get
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_audio_decoder(&self, id: AudioCodecId) -> Option<&RegisteredAudioDecoder>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_at_tier
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - tier
    - id
    argTypes:
    - Tier
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 210
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 210
    functionName: CodecRegistry::get_audio_decoder_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - get_at_tier
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_audio_decoder_at_tier(&self,tier: Tier,id: AudioCodecId,)
      -> Option<&RegisteredAudioDecoder>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - id
    argTypes:
    - VideoCodecId
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: CodecRegistry::get_video_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 2
    functionsReached:
    - get
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_video_decoder(&self, id: VideoCodecId) -> Option<&RegisteredVideoDecoder>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_at_tier
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - tier
    - id
    argTypes:
    - Tier
    - VideoCodecId
    constantsTouched: []
    func_position:
      end: 228
      start: 222
    functionDepth: 2
    functionLinenumber: 222
    functionLinenumberEnd: 228
    functionName: CodecRegistry::get_video_decoder_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - get_at_tier
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_video_decoder_at_tier(&self,tier: Tier,id: VideoCodecId,)
      -> Option<&RegisteredVideoDecoder>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - id
    argTypes:
    - SubtitleCodecId
    constantsTouched: []
    func_position:
      end: 235
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionName: CodecRegistry::get_subtitle_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 2
    functionsReached:
    - get
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_subtitle_decoder(&self, id: SubtitleCodecId) -> Option<&RegisteredSubtitleDecoder>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_at_tier
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - tier
    - id
    argTypes:
    - Tier
    - SubtitleCodecId
    constantsTouched: []
    func_position:
      end: 246
      start: 240
    functionDepth: 2
    functionLinenumber: 240
    functionLinenumberEnd: 246
    functionName: CodecRegistry::get_subtitle_decoder_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - get_at_tier
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_subtitle_decoder_at_tier(&self,tier: Tier,id: SubtitleCodecId,)
      -> Option<&RegisteredSubtitleDecoder>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: register_audio_decoder_at_tier::<C>
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 254
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionName: CodecRegistry::register_audio_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - register_audio_decoder_at_tier::<C>
    linkageType: ''
    returnType: void
    signature: 'pub fn register_audio_decoder<C: RegisterableAudioDecoder>(&mut self)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::supported_codecs
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:261,1
    - Dst: C::try_registry_new
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:264,1
    - Dst: register_at_tier
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - tier
    argTypes:
    - Tier
    constantsTouched: []
    func_position:
      end: 269
      start: 260
    functionDepth: 11
    functionLinenumber: 260
    functionLinenumberEnd: 269
    functionName: CodecRegistry::register_audio_decoder_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - register_at_tier
    - C::supported_codecs
    - C::try_registry_new
    linkageType: ''
    returnType: void
    signature: 'pub fn register_audio_decoder_at_tier<C: RegisterableAudioDecoder>(&mut
      self, tier: Tier)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: register_video_decoder_at_tier::<C>
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 278
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionName: CodecRegistry::register_video_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - register_video_decoder_at_tier::<C>
    linkageType: ''
    returnType: void
    signature: 'pub fn register_video_decoder<C: RegisterableVideoDecoder>(&mut self)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::supported_codecs
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:286,1
    - Dst: C::try_registry_new
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:289,1
    - Dst: register_at_tier
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - tier
    argTypes:
    - Tier
    constantsTouched: []
    func_position:
      end: 294
      start: 285
    functionDepth: 11
    functionLinenumber: 285
    functionLinenumberEnd: 294
    functionName: CodecRegistry::register_video_decoder_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - register_at_tier
    - C::supported_codecs
    - C::try_registry_new
    linkageType: ''
    returnType: void
    signature: 'pub fn register_video_decoder_at_tier<C: RegisterableVideoDecoder>(&mut
      self, tier: Tier)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: register_subtitle_decoder_at_tier::<C>
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 303
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 303
    functionName: CodecRegistry::register_subtitle_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - register_subtitle_decoder_at_tier::<C>
    linkageType: ''
    returnType: void
    signature: 'pub fn register_subtitle_decoder<C: RegisterableSubtitleDecoded>(&mut
      self)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: C::supported_codecs
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:314,1
    - Dst: C::try_registry_new
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:317,1
    - Dst: register_at_tier
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - tier
    argTypes:
    - Tier
    constantsTouched: []
    func_position:
      end: 322
      start: 310
    functionDepth: 11
    functionLinenumber: 310
    functionLinenumberEnd: 322
    functionName: CodecRegistry::register_subtitle_decoder_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - register_at_tier
    - C::supported_codecs
    - C::try_registry_new
    linkageType: ''
    returnType: void
    signature: 'pub fn register_subtitle_decoder_at_tier<C: RegisterableSubtitleDecoded>(&mut
      self,tier: Tier,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CodecRegistry::get_audio_decoder
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:335,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:336,1
    - Dst: errors::unsupported_error
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:339,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 341
      start: 330
    functionDepth: 2
    functionLinenumber: 330
    functionLinenumberEnd: 341
    functionName: CodecRegistry::make_audio_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 4
    functionsReached:
    - Ok
    - errors::unsupported_error
    - CodecRegistry::get_audio_decoder
    linkageType: ''
    returnType: Result
    signature: 'pub fn make_audio_decoder(&self,params: &AudioCodecParameters,opts:
      &AudioDecoderOptions,) -> Result<Box<dyn AudioDecoder>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CodecRegistry::get_video_decoder
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:355,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:356,1
    - Dst: errors::unsupported_error
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:359,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&VideoCodecParameters'
    - '&VideoDecoderOptions'
    constantsTouched: []
    func_position:
      end: 361
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 361
    functionName: CodecRegistry::make_video_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - CodecRegistry::get_video_decoder
    - Ok
    - errors::unsupported_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn make_video_decoder(&self,params: &VideoCodecParameters,opts:
      &VideoDecoderOptions,) -> Result<Box<dyn VideoDecoder>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CodecRegistry::get_subtitle_decoder
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:375,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:376,1
    - Dst: errors::unsupported_error
      Src: /src/symphonia/symphonia-core/src/codecs/registry.rs:379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&SubtitleCodecParameters'
    - '&SubtitleDecoderOptions'
    constantsTouched: []
    func_position:
      end: 381
      start: 370
    functionDepth: 2
    functionLinenumber: 370
    functionLinenumberEnd: 381
    functionName: CodecRegistry::make_subtitle_decoder
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached:
    - CodecRegistry::get_subtitle_decoder
    - errors::unsupported_error
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn make_subtitle_decoder(&self,params: &SubtitleCodecParameters,opts:
      &SubtitleDecoderOptions,) -> Result<Box<dyn SubtitleDecoder>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 394
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 394
    functionName: codec_profile
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 419
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 419
    functionName: support_audio_codec
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 444
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 444
    functionName: support_video_codec
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 459
      start: 448
    functionDepth: 0
    functionLinenumber: 448
    functionLinenumberEnd: 459
    functionName: support_subtitle_codec
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/registry.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/codecs/subtitle.rs:41,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/codecs/subtitle.rs:41,1
    - Dst: FourCc::get
      Src: /src/symphonia/symphonia-core/src/codecs/subtitle.rs:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - cc
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: SubtitleCodecId::new
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 1
    functionsReached:
    - Self
    - u32::from_be_bytes
    - FourCc::get
    linkageType: ''
    returnType: SubtitleCodecId
    signature: 'pub const fn new(cc: FourCc) -> SubtitleCodecId'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: SubtitleCodecId::default
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SubtitleCodecId::new
      Src: /src/symphonia/symphonia-core/src/codecs/subtitle.rs:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: SubtitleCodecId::from
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 0
    functionsReached:
    - SubtitleCodecId::new
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: FourCc) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: SubtitleCodecId::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: SubtitleCodecParameters::new
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: SubtitleCodecParameters
    signature: pub fn new() -> SubtitleCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - codec
    argTypes:
    - SubtitleCodecId
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: SubtitleCodecParameters::for_codec
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn for_codec(&mut self, codec: SubtitleCodecId) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/subtitle.rs:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - Box<[u8]>
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: SubtitleCodecParameters::with_extra_data
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_extra_data(&mut self, data: Box<[u8]>) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SubtitleDecoder::decode_ref
      Src: /src/symphonia/symphonia-core/src/codecs/subtitle.rs:127,1
    - Dst: Result::as_packet_ref
      Src: /src/symphonia/symphonia-core/src/codecs/subtitle.rs:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&Packet'
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 20
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: SubtitleDecoder::decode
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
    functionUses: 0
    functionsReached:
    - Result::as_packet_ref
    - SubtitleDecoder::decode_ref
    linkageType: ''
    returnType: Result
    signature: 'fn decode(&mut self, packet: &Packet) -> Result<GenericSubtitleBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - code
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: CodecProfile::new
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 2
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'pub const fn new(code: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: CodecProfile::get
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: pub const fn get(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: CodecProfile::from
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - Self
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: CodecParameters::is_audio
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_audio(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: CodecParameters::audio
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn audio(&self) -> Option<&AudioCodecParameters>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 113
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionName: CodecParameters::audio_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn audio_mut(&mut self) -> Option<&mut AudioCodecParameters>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: CodecParameters::is_video
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_video(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 127
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 127
    functionName: CodecParameters::video
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn video(&self) -> Option<&VideoCodecParameters>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: CodecParameters::video_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn video_mut(&mut self) -> Option<&mut VideoCodecParameters>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: CodecParameters::is_subtitle
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_subtitle(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: CodecParameters::subtitle
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn subtitle(&self) -> Option<&SubtitleCodecParameters>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 159
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionName: CodecParameters::subtitle_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn subtitle_mut(&mut self) -> Option<&mut SubtitleCodecParameters>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CodecParameters::Subtitle
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - SubtitleCodecParameters
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: CodecParameters::from
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - CodecParameters::Subtitle
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: SubtitleCodecParameters) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: CodecId::Subtitle
      Src: /src/symphonia/symphonia-core/src/codecs/mod.rs:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - SubtitleCodecId
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: CodecId::from
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/mod.rs
    functionUses: 0
    functionsReached:
    - CodecId::Subtitle
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: SubtitleCodecId) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: VideoCodecId::default
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:42,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:42,1
    - Dst: FourCc::get
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - cc
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: VideoCodecId::new
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 1
    functionsReached:
    - Self
    - u32::from_be_bytes
    - FourCc::get
    linkageType: ''
    returnType: VideoCodecId
    signature: 'pub const fn new(cc: FourCc) -> VideoCodecId'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: VideoCodecId::new
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: VideoCodecId::from
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached:
    - VideoCodecId::new
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: FourCc) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: VideoCodecId::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: VideoExtraDataId::default
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - codec
    argTypes:
    - VideoCodecId
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: VideoCodecParameters::for_codec
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn for_codec(&mut self, codec: VideoCodecId) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - profile
    argTypes:
    - CodecProfile
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: VideoCodecParameters::with_profile
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_profile(&mut self, profile: CodecProfile) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - level
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: VideoCodecParameters::with_level
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_level(&mut self, level: u32) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - width
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: VideoCodecParameters::with_width
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_width(&mut self, width: u16) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - height
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: VideoCodecParameters::with_height
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_height(&mut self, height: u16) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/codecs/video.rs:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - VideoExtraData
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: VideoCodecParameters::add_extra_data
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/video.rs
    functionUses: 0
    functionsReached:
    - push
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn add_extra_data(&mut self, data: VideoExtraData) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: AudioCodecId::default
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:44,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:44,1
    - Dst: FourCc::get
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - cc
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: AudioCodecId::new
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 1
    functionsReached:
    - Self
    - u32::from_be_bytes
    - FourCc::get
    linkageType: ''
    returnType: AudioCodecId
    signature: 'pub const fn new(cc: FourCc) -> AudioCodecId'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioCodecId::new
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: AudioCodecId::from
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - AudioCodecId::new
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: FourCc) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: AudioCodecId::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 129
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 129
    functionName: AudioCodecParameters::new
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: AudioCodecParameters
    signature: pub fn new() -> AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - codec
    argTypes:
    - AudioCodecId
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: AudioCodecParameters::for_codec
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn for_codec(&mut self, codec: AudioCodecId) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - profile
    argTypes:
    - CodecProfile
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: AudioCodecParameters::with_profile
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_profile(&mut self, profile: CodecProfile) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - sample_rate
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: AudioCodecParameters::with_sample_rate
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_sample_rate(&mut self, sample_rate: u32) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - sample_format
    argTypes:
    - SampleFormat
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: AudioCodecParameters::with_sample_format
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_sample_format(&mut self, sample_format: SampleFormat)
      -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - bits_per_sample
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: AudioCodecParameters::with_bits_per_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_bits_per_sample(&mut self, bits_per_sample: u32) -> &mut
      Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - bits_per_coded_sample
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: AudioCodecParameters::with_bits_per_coded_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_bits_per_coded_sample(&mut self, bits_per_coded_sample:
      u32) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - channels
    argTypes:
    - Channels
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: AudioCodecParameters::with_channels
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_channels(&mut self, channels: Channels) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - len
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: AudioCodecParameters::with_max_frames_per_packet
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_max_frames_per_packet(&mut self, len: u64) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - len
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: AudioCodecParameters::with_frames_per_block
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_frames_per_block(&mut self, len: u64) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - Box<[u8]>
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: AudioCodecParameters::with_extra_data
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_extra_data(&mut self, data: Box<[u8]>) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - code
    argTypes:
    - VerificationCheck
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: AudioCodecParameters::with_verification_code
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_verification_code(&mut self, code: VerificationCheck)
      -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: AudioDecoderOptions::default
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: AudioDecoderOptions::gapless
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn gapless(mut self, enable: bool) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - verify
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: AudioDecoderOptions::verify
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn verify(mut self, verify: bool) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioDecoder::decode_ref
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:280,1
    - Dst: Result::as_packet_ref
      Src: /src/symphonia/symphonia-core/src/codecs/audio.rs:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&Packet'
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 20
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: AudioDecoder::decode
    functionSourceFile: /src/symphonia/symphonia-core/src/codecs/audio.rs
    functionUses: 0
    functionsReached:
    - AudioDecoder::decode_ref
    - Result::as_packet_ref
    linkageType: ''
    returnType: Result
    signature: 'fn decode(&mut self, packet: &Packet) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:46,1
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:46,1
    - Dst: FourCc::get
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - cc
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: FormatId::new
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 1
    functionsReached:
    - Self
    - u32::from_be_bytes
    - FourCc::get
    linkageType: ''
    returnType: FormatId
    signature: 'pub const fn new(cc: FourCc) -> FormatId'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FormatId::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - FourCc
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: FormatId::from
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - FormatId::new
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: FourCc) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter'
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: FormatId::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 165
      start: 159
    functionDepth: 15
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionName: FormatOptions::default
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 1
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - prebuild
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: FormatOptions::prebuild_seek_index
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn prebuild_seek_index(mut self, prebuild: bool) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - period
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: FormatOptions::seek_index_fill_period_ms
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn seek_index_fill_period_ms(mut self, period: u16) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:288,1
    - Dst: TrackFlags::empty
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - id
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 293
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 293
    functionName: Track::new
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 9
    functionsReached:
    - Timestamp::new
    - TrackFlags::empty
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(id: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_none
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:301,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:304,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - codec_params
    argTypes:
    - CodecParameters
    constantsTouched: []
    func_position:
      end: 312
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 312
    functionName: Track::with_codec_params
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - and_then
    - Some
    - is_none
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_codec_params(&mut self, codec_params: CodecParameters)
      -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:316,1
    - Dst: String::to_string
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - language
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 318
      start: 315
    functionDepth: 2
    functionLinenumber: 315
    functionLinenumberEnd: 318
    functionName: Track::with_language
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - String::to_string
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_language(&mut self, language: &str) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - time_base
    argTypes:
    - TimeBase
    constantsTouched: []
    func_position:
      end: 324
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 324
    functionName: Track::with_time_base
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_time_base(&mut self, time_base: TimeBase) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num_frames
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 330
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionName: Track::with_num_frames
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_num_frames(&mut self, num_frames: u64) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - duration
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 336
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionName: Track::with_duration
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_duration(&mut self, duration: Duration) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - start_ts
    argTypes:
    - Timestamp
    constantsTouched: []
    func_position:
      end: 342
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionName: Track::with_start_ts
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_start_ts(&mut self, start_ts: Timestamp) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - delay
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 348
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 348
    functionName: Track::with_delay
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_delay(&mut self, delay: u32) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - padding
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: Track::with_padding
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_padding(&mut self, padding: u32) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - flags
    argTypes:
    - TrackFlags
    constantsTouched: []
    func_position:
      end: 360
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 360
    functionName: Track::with_flags
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_flags(&mut self, flags: TrackFlags) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:368,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:369,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 373
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 373
    functionName: Track::track_type
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn track_type(&self) -> Option<TrackType>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - track
    argTypes:
    - '&Track'
    constantsTouched: []
    func_position:
      end: 456
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 456
    functionName: MediaInfo::from_track
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn from_track(track: &Track) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:470,1
    - Dst: Self::from_track
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:472,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:475,1
    - Dst: '&[Track]::iter'
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:478,1
    - Dst: min_by_key
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:478,1
    - Dst: '&[Track]::iter'
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:483,1
    - Dst: filter_map
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:483,1
    - Dst: String::timestamp_from
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:493,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:493,1
    - Dst: calc_time_saturating
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:495,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:497,1
    - Dst: max_by_key
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:483,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:483,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 51
    argCount: 1
    argNames:
    - tracks
    argTypes:
    - '&[Track]'
    constantsTouched: []
    func_position:
      end: 509
      start: 467
    functionDepth: 15
    functionLinenumber: 467
    functionLinenumberEnd: 509
    functionName: MediaInfo::from_tracks
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 1
    functionsReached:
    - filter_map
    - Self::from_track
    - String::timestamp_from
    - Option::unwrap_or
    - Some
    - map
    - min_by_key
    - max_by_key
    - calc_time_saturating
    - Default::default
    - '&[Track]::iter'
    linkageType: ''
    returnType: Self
    signature: 'pub fn from_tracks(tracks: &[Track]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 513
      start: 511
    functionDepth: 15
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionName: MediaInfo::new
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 2
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - time_base
    argTypes:
    - TimeBase
    constantsTouched: []
    func_position:
      end: 519
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 519
    functionName: MediaInfo::with_time_base
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 2
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_time_base(&mut self, time_base: TimeBase) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - duration
    argTypes:
    - Duration
    constantsTouched: []
    func_position:
      end: 525
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 525
    functionName: MediaInfo::with_duration
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 2
    functionsReached:
    - Some
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_duration(&mut self, duration: Duration) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - start_ts
    argTypes:
    - Timestamp
    constantsTouched: []
    func_position:
      end: 531
      start: 528
    functionDepth: 0
    functionLinenumber: 528
    functionLinenumberEnd: 531
    functionName: MediaInfo::with_start_ts
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_start_ts(&mut self, start_ts: Timestamp) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 565
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 565
    functionName: FormatReader::attachments
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Attachment]'
    signature: fn attachments(&self) -> &[Attachment]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 574
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 574
    functionName: FormatReader::chapters
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FormatReader::tracks
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:599,1
    - Dst: '&[Track]::iter'
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:599,1
    - Dst: find
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:599,1
    - Dst: matches_track_type
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - track_type
    argTypes:
    - TrackType
    constantsTouched: []
    func_position:
      end: 600
      start: 597
    functionDepth: 11
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionName: FormatReader::first_track
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - FormatReader::tracks
    - find
    - matches_track_type
    - '&[Track]::iter'
    linkageType: ''
    returnType: Option
    signature: 'fn first_track(&self, track_type: TrackType) -> Option<&Track>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FormatReader::tracks
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:605,1
    - Dst: '&[Track]::iter'
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:605,1
    - Dst: find
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:605,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - track_type
    argTypes:
    - TrackType
    constantsTouched: []
    func_position:
      end: 617
      start: 603
    functionDepth: 11
    functionLinenumber: 603
    functionLinenumberEnd: 617
    functionName: FormatReader::first_track_known_codec
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 1
    functionsReached:
    - FormatReader::tracks
    - find
    - '&[Track]::iter'
    linkageType: ''
    returnType: Option
    signature: 'fn first_track_known_codec(&self, track_type: TrackType) -> Option<&Track>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FormatReader::tracks
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:632,1
    - Dst: '&[Track]::iter'
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:632,1
    - Dst: filter
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:632,1
    - Dst: contains
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:634,1
    - Dst: find
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:632,1
    - Dst: matches_track_type
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:635,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:632,1
    - Dst: FormatReader::first_track_known_codec
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 1
    argNames:
    - track_type
    argTypes:
    - TrackType
    constantsTouched: []
    func_position:
      end: 637
      start: 630
    functionDepth: 11
    functionLinenumber: 630
    functionLinenumberEnd: 637
    functionName: FormatReader::default_track
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - FormatReader::tracks
    - matches_track_type
    - contains
    - or_else
    - find
    - filter
    - FormatReader::first_track_known_codec
    - '&[Track]::iter'
    linkageType: ''
    returnType: Option
    signature: 'fn default_track(&self, track_type: TrackType) -> Option<&Track>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - track
    - track_type
    argTypes:
    - '&Track'
    - TrackType
    constantsTouched: []
    func_position:
      end: 662
      start: 655
    functionDepth: 0
    functionLinenumber: 655
    functionLinenumberEnd: 662
    functionName: matches_track_type
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'fn matches_track_type(track: &Track, track_type: TrackType) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SeekIndex::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:805,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:807,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:807,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:808,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:808,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:809,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:809,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:810,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:810,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:811,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:811,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:835,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:835,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:836,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:836,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:837,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:837,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:872,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-core/src/formats/mod.rs:872,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 879
      start: 804
    functionDepth: 10
    functionLinenumber: 804
    functionLinenumberEnd: 879
    functionName: util::verify_seek_index_search
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/mod.rs
    functionUses: 0
    functionsReached:
    - SeekIndex::new
    - Option::insert
    - Timestamp::new
    linkageType: ''
    returnType: void
    signature: fn verify_seek_index_search()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:29,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:30,1
    - Dst: wrapping_mul
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - value
    argTypes:
    - '&[u8; 2]'
    constantsTouched: []
    func_position:
      end: 34
      start: 23
    functionDepth: 11
    functionLinenumber: 23
    functionLinenumberEnd: 34
    functionName: bloom::fnv1a32
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - wrapping_mul
    - iter
    - u32::from
    linkageType: ''
    returnType: u32
    signature: 'fn fnv1a32(value: &[u8; 2]) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - is_trailing_probe
    argTypes:
    - bool
    constantsTouched: []
    func_position:
      end: 196
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 196
    functionName: GenericProbeMatch::should_test
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'fn should_test(&self, is_trailing_probe: bool) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 270
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionName: Hint::new
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:274,1
    - Dst: '&mut Self::to_owned'
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - extension
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: Hint::with_extension
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - Some
    - '&mut Self::to_owned'
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn with_extension(&mut self, extension: &str) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:280,1
    - Dst: '&mut Self::to_owned'
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - mime_type
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 282
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 282
    functionName: Hint::mime_type
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - Some
    - '&mut Self::to_owned'
    linkageType: ''
    returnType: '&mut Self'
    signature: 'pub fn mime_type(&mut self, mime_type: &str) -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 307
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 307
    functionName: ProbeOptions::default
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Probe::new_with_options
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:325,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 326
      start: 324
    functionDepth: 16
    functionLinenumber: 324
    functionLinenumberEnd: 326
    functionName: Probe::new
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - Probe::new_with_options
    - Default::default
    linkageType: ''
    returnType: Self
    signature: pub fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - opts
    argTypes:
    - '&ProbeOptions'
    constantsTouched: []
    func_position:
      end: 331
      start: 329
    functionDepth: 15
    functionLinenumber: 329
    functionLinenumberEnd: 331
    functionName: Probe::new_with_options
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 1
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: 'pub fn new_with_options(opts: &ProbeOptions) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: register_format_at_tier::<P>
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 339
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 339
    functionName: Probe::register_format
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - register_format_at_tier::<P>
    linkageType: ''
    returnType: void
    signature: 'pub fn register_format<P>(&mut self)wherefor<''a> P: ProbeableFormat<''a>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: register_metadata_at_tier::<P>
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 347
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 347
    functionName: Probe::register_metadata
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - register_metadata_at_tier::<P>
    linkageType: ''
    returnType: void
    signature: 'pub fn register_metadata<P>(&mut self)wherefor<''a> P: ProbeableMetadata<''a>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: P::probe_data
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:354,1
    - Dst: P::try_probe_new
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:361,1
    - Dst: Probe::register
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - tier
    argTypes:
    - Tier
    constantsTouched: []
    func_position:
      end: 368
      start: 350
    functionDepth: 11
    functionLinenumber: 350
    functionLinenumberEnd: 368
    functionName: Probe::register_format_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - Probe::register
    - P::try_probe_new
    - P::probe_data
    linkageType: ''
    returnType: void
    signature: 'pub fn register_format_at_tier<P>(&mut self, tier: Tier)wherefor<''a>
      P: ProbeableFormat<''a>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: P::probe_data
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:375,1
    - Dst: P::try_probe_new
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:382,1
    - Dst: extend_from_slice
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:389,1
    - Dst: sort_by
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:394,1
    - Dst: Option::cmp
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:394,1
    - Dst: dedup
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:395,1
    - Dst: Probe::register
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:401,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 32
    argCount: 1
    argNames:
    - tier
    argTypes:
    - Tier
    constantsTouched: []
    func_position:
      end: 403
      start: 371
    functionDepth: 11
    functionLinenumber: 371
    functionLinenumberEnd: 403
    functionName: Probe::register_metadata_at_tier
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 0
    functionsReached:
    - Probe::register
    - P::try_probe_new
    - dedup
    - Option::cmp
    - P::probe_data
    - extend_from_slice
    - sort_by
    linkageType: ''
    returnType: void
    signature: 'pub fn register_metadata_at_tier<P>(&mut self, tier: Tier)wherefor<''a>
      P: ProbeableMetadata<''a>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:410,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:411,1
    - Dst: insert
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:415,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:420,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:421,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:422,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 2
    argNames:
    - tier
    - candidate
    argTypes:
    - Tier
    - GenericProbeMatch
    constantsTouched: []
    func_position:
      end: 424
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 424
    functionName: Probe::register
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 2
    functionsReached:
    - copy_from_slice
    - insert
    - len
    - push
    linkageType: ''
    returnType: void
    signature: 'fn register(&mut self, tier: Tier, candidate: GenericProbeMatch)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::is_seekable
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:438,1
    - Dst: Option::byte_len
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:439,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:442,1
    - Dst: Probe::probe_trailing
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:444,1
    - Dst: Option::seek
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:447,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:447,1
    - Dst: Probe::next
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:453,1
    - Dst: factory
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:457,1
    - Dst: factory
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:462,1
    - Dst: read_and_append_metadata
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:463,1
    - Dst: Result::into_inner
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:464,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 4
    argNames:
    - hint
    - mss
    - fmt_opts
    - meta_opts
    argTypes:
    - '&Hint'
    - MediaSourceStream<'s>
    - FormatOptions
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 471
      start: 429
    functionDepth: 12
    functionLinenumber: 429
    functionLinenumberEnd: 471
    functionName: Probe::probe
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 3
    functionsReached:
    - Option::seek
    - Probe::probe_trailing
    - read_and_append_metadata
    - Option::is_seekable
    - factory
    - SeekFrom::Start
    - Option::pos
    - Option::byte_len
    - Result::into_inner
    - Probe::next
    linkageType: ''
    returnType: Result
    signature: 'pub fn probe<''s>(&self,hint: &Hint,mut mss: MediaSourceStream<''s>,mut
      fmt_opts: FormatOptions,meta_opts: MetadataOptions,) -> Result<Box<dyn FormatReader
      + ''s>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:488,1
    - Dst: copied
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:488,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:488,1
    - Dst: Option::seek_buffered
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:503,1
    - Dst: Option::seek
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:504,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:504,1
    - Dst: Option::read_double_bytes
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:509,1
    - Dst: may_contain
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:511,1
    - Dst: Option::seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:513,1
    - Dst: Probe::find_best_reader
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:516,1
    - Dst: factory
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:518,1
    - Dst: read_and_append_metadata
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:523,1
    - Dst: Result::is_ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:523,1
    - Dst: Result::into_inner
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:532,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:537,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:543,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 71
    argCount: 4
    argNames:
    - mss
    - end
    - fmt_opts
    - meta_opts
    argTypes:
    - MediaSourceStream<'s>
    - u64
    - '&mut FormatOptions'
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 544
      start: 475
    functionDepth: 11
    functionLinenumber: 475
    functionLinenumberEnd: 544
    functionName: Probe::probe_trailing
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 1
    functionsReached:
    - may_contain
    - Option::seek
    - Ok
    - Option::read_double_bytes
    - iter
    - map
    - read_and_append_metadata
    - factory
    - SeekFrom::Start
    - Option::seek_buffered
    - Result::is_ok
    - Result::into_inner
    - Option::pos
    - Probe::find_best_reader
    - Option::seek_buffered_rel
    - copied
    linkageType: ''
    returnType: Result
    signature: 'fn probe_trailing<''s>(&self,mut mss: MediaSourceStream<''s>,end:
      u64,fmt_opts: &mut FormatOptions,meta_opts: MetadataOptions,) -> Result<MediaSourceStream<''s>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:551,1
    - Dst: Option::read_byte
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:555,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:556,1
    - Dst: may_contain
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:573,1
    - Dst: to_be_bytes
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:573,1
    - Dst: Option::seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:575,1
    - Dst: Probe::find_best_reader
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:578,1
    - Dst: warn_junk_bytes
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:579,1
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:579,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:580,1
    - Dst: Option::seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:585,1
    - Dst: errors::unsupported_error
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:597,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 60
    argCount: 2
    argNames:
    - mss
    - _hint
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - '&Hint'
    constantsTouched: []
    func_position:
      end: 598
      start: 548
    functionDepth: 13
    functionLinenumber: 548
    functionLinenumberEnd: 598
    functionName: Probe::next
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 1
    functionsReached:
    - Option::read_byte
    - u16::from
    - errors::unsupported_error
    - may_contain
    - Ok
    - to_be_bytes
    - Option::pos
    - warn_junk_bytes
    - Probe::find_best_reader
    - Option::seek_buffered_rel
    linkageType: ''
    returnType: Result
    signature: 'fn next(&self, mss: &mut MediaSourceStream<''_>, _hint: &Hint) ->
      Result<ProbeMatch>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::read_buf
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:608,1
    - Dst: Option::seek_buffered_rel
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:611,1
    - Dst: find_reader
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:617,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:619,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:619,1
    - Dst: find_reader
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:624,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:626,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:626,1
    - Dst: find_reader
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:631,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:633,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:633,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:636,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 48
    argCount: 2
    argNames:
    - mss
    - is_trailing
    argTypes:
    - '&mut MediaSourceStream'
    - bool
    constantsTouched: []
    func_position:
      end: 637
      start: 601
    functionDepth: 12
    functionLinenumber: 601
    functionLinenumberEnd: 637
    functionName: Probe::find_best_reader
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 2
    functionsReached:
    - find_reader
    - Some
    - Option::read_buf
    - Ok
    - Option::seek_buffered_rel
    linkageType: ''
    returnType: Result
    signature: 'fn find_best_reader(&self,mss: &mut MediaSourceStream,is_trailing:
      bool,) -> Result<Option<ProbeMatch>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_all
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:645,1
    - Dst: get_or_insert_with
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:650,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:650,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:658,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:664,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - reader
    - fmt_opts
    argTypes:
    - '&mut Box<dyn MetadataReader + ''s>'
    - '&mut FormatOptions'
    constantsTouched: []
    func_position:
      end: 665
      start: 640
    functionDepth: 17
    functionLinenumber: 640
    functionLinenumberEnd: 665
    functionName: read_and_append_metadata
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 2
    functionsReached:
    - Result::read_all
    - Some
    - get_or_insert_with
    - Ok
    - push
    linkageType: ''
    returnType: Result
    signature: 'fn read_and_append_metadata<''s>(reader: &mut Box<dyn MetadataReader
      + ''s>,fmt_opts: &mut FormatOptions,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::ensure_seekback_buffer
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:676,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:676,1
    - Dst: '&[GenericProbeMatch]::iter'
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:678,1
    - Dst: filter
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:678,1
    - Dst: Result::should_test
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:678,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:680,1
    - Dst: any
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:680,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:681,1
    - Dst: score
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:693,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:706,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:706,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:720,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 50
    argCount: 5
    argNames:
    - mss
    - descs
    - win
    - max_depth
    - is_trailing
    argTypes:
    - '&mut MediaSourceStream'
    - '&[GenericProbeMatch]'
    - '[u8; 16]'
    - u16
    - bool
    constantsTouched: []
    func_position:
      end: 721
      start: 667
    functionDepth: 11
    functionLinenumber: 667
    functionLinenumberEnd: 721
    functionName: find_reader
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - any
    - len
    - Some
    - '&[GenericProbeMatch]::iter'
    - iter
    - filter
    - Result::should_test
    - Option::ensure_seekback_buffer
    - Ok
    - score
    linkageType: ''
    returnType: Result
    signature: 'fn find_reader(mss: &mut MediaSourceStream,descs: &[GenericProbeMatch],win:
      [u8; 16],max_depth: u16,is_trailing: bool,) -> Result<Option<ProbeMatch>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::pos
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:729,1
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:732,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:732,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:733,1
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:736,1
    - Dst: Error::IoError
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:736,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:740,1
    - Dst: Option::seek_buffered
      Src: /src/symphonia/symphonia-core/src/formats/probe.rs:746,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 3
    argNames:
    - candidate
    - mss
    - max_depth
    argTypes:
    - '&GenericProbeMatch'
    - '&mut MediaSourceStream'
    - u16
    constantsTouched: []
    func_position:
      end: 749
      start: 723
    functionDepth: 4
    functionLinenumber: 723
    functionLinenumberEnd: 749
    functionName: score
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 1
    functionsReached:
    - Error::IoError
    - u64::from
    - ScopedStream::new
    - Option::pos
    - Option::seek_buffered
    - Err
    - Ok
    - Result::kind
    linkageType: ''
    returnType: Result
    signature: 'fn score(candidate: &GenericProbeMatch,mss: &mut MediaSourceStream,max_depth:
      u16,) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - pos
    - init_pos
    argTypes:
    - u64
    - u64
    constantsTouched: []
    func_position:
      end: 756
      start: 751
    functionDepth: 0
    functionLinenumber: 751
    functionLinenumberEnd: 756
    functionName: warn_junk_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn warn_junk_bytes(pos: u64, init_pos: u64)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 771
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 771
    functionName: support_format
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 798
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 798
    functionName: support_metadata
    functionSourceFile: /src/symphonia/symphonia-core/src/formats/probe.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - state
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 302
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 302
    functionName: Crc16Ansi::new
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(state: u16) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 307
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionName: Crc16Ansi::crc
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: pub fn crc(&self) -> u16
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - byte
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 314
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionName: Crc16Ansi::process_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn process_byte(&mut self, byte: u8)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::chunks_exact
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:317,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:320,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:320,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:326,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:327,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:328,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:329,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:330,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:331,1
    - Dst: remainder
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:334,1
    - Dst: Crc16Ansi::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 70
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 337
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 337
    functionName: Crc16Ansi::process_buf_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - u16::from
    - Result::chunks_exact
    - remainder
    - Crc16Ansi::process_byte
    linkageType: ''
    returnType: void
    signature: 'fn process_buf_bytes(&mut self, buf: &[u8])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - state
    argTypes:
    - u16
    constantsTouched: []
    func_position:
      end: 392
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 392
    functionName: Crc16AnsiLe::new
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(state: u16) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 397
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 397
    functionName: Crc16AnsiLe::crc
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: pub fn crc(&self) -> u16
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - byte
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 404
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 404
    functionName: Crc16AnsiLe::process_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn process_byte(&mut self, byte: u8)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:408,1
    - Dst: Crc16AnsiLe::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc16.rs:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 411
      start: 406
    functionDepth: 11
    functionLinenumber: 406
    functionLinenumberEnd: 411
    functionName: Crc16AnsiLe::process_buf_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc16.rs
    functionUses: 0
    functionsReached:
    - Crc16AnsiLe::process_byte
    - Result::iter
    linkageType: ''
    returnType: void
    signature: 'fn process_buf_bytes(&mut self, buf: &[u8])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::try_into
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:240,1
    - Dst: fft32
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:242,1
    - Dst: fft_twiddle_factors
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:253,1
    - Dst: Option::chunks_exact_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:256,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:258,1
    - Dst: fft32
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:259,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:259,1
    - Dst: unwrap
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:259,1
    - Dst: fft32
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:260,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:260,1
    - Dst: unwrap
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:260,1
    - Dst: merge
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:263,1
    - Dst: fft_twiddle_factors
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:273,1
    - Dst: Option::chunks_exact_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:274,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:275,1
    - Dst: merge
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:276,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 82
    argCount: 2
    argNames:
    - x
    - n
    argTypes:
    - '&mut [Complex<f32>]'
    - usize
    constantsTouched: []
    func_position:
      end: 281
      start: 221
    functionDepth: 5
    functionLinenumber: 221
    functionLinenumberEnd: 281
    functionName: transform
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 3
    functionsReached:
    - split_at_mut
    - Option::try_into
    - fft32
    - fft_twiddle_factors
    - Option::chunks_exact_mut
    - try_into
    - unwrap
    - merge
    linkageType: ''
    returnType: void
    signature: 'fn transform(x: &mut [Complex<f32>], n: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: Md5::default
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/md5.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:206,1
    - Dst: transform
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:214,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:219,1
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:219,1
    - Dst: transform
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:220,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:224,1
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:224,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:225,1
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:225,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:226,1
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:226,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:227,1
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 84
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 229
      start: 193
    functionDepth: 6
    functionLinenumber: 193
    functionLinenumberEnd: 229
    functionName: Md5::md5
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/md5.rs
    functionUses: 0
    functionsReached:
    - copy_from_slice
    - transform
    - to_le_bytes
    linkageType: ''
    returnType: '[u8; 16]'
    signature: pub fn md5(&self) -> [u8; 16]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: transform
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - byte
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 244
      start: 234
    functionDepth: 6
    functionLinenumber: 234
    functionLinenumberEnd: 244
    functionName: Md5::process_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/md5.rs
    functionUses: 0
    functionsReached:
    - transform
    linkageType: ''
    returnType: void
    signature: 'fn process_byte(&mut self, byte: u8)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::is_empty
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:250,1
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:253,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:253,1
    - Dst: transform
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:260,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:264,1
    - Dst: transform
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:267,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 52
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 273
      start: 247
    functionDepth: 6
    functionLinenumber: 247
    functionLinenumberEnd: 273
    functionName: Md5::process_buf_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/md5.rs
    functionUses: 0
    functionsReached:
    - cmp::min
    - Self::is_empty
    - copy_from_slice
    - transform
    - Self::len
    linkageType: ''
    returnType: void
    signature: 'fn process_buf_bytes(&mut self, buf: &[u8])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:331,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:331,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:332,1
    - Dst: '[u8; 16]::process_buf_bytes'
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:334,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:340,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:340,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:341,1
    - Dst: Result::chunks
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:343,1
    - Dst: '[u8; 16]::process_buf_bytes'
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:344,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:351,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:351,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:352,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:354,1
    - Dst: '[u8; 16]::process_byte'
      Src: /src/symphonia/symphonia-core/src/checksum/md5.rs:355,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 360
      start: 282
    functionDepth: 11
    functionLinenumber: 282
    functionLinenumberEnd: 360
    functionName: tests::verify_md5
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/md5.rs
    functionUses: 0
    functionsReached:
    - '[u8; 16]::process_byte'
    - zip
    - '[u8; 16]::process_buf_bytes'
    - iter
    - Result::iter
    - Default::default
    - Result::chunks
    linkageType: ''
    returnType: void
    signature: fn verify_md5()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - state
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 557
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionName: Crc32::new
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc32.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(state: u32) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 562
      start: 560
    functionDepth: 0
    functionLinenumber: 560
    functionLinenumberEnd: 562
    functionName: Crc32::crc
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc32.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: pub fn crc(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:568,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - byte
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 569
      start: 567
    functionDepth: 1
    functionLinenumber: 567
    functionLinenumberEnd: 569
    functionName: Crc32::process_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc32.rs
    functionUses: 1
    functionsReached:
    - usize::from
    linkageType: ''
    returnType: void
    signature: 'fn process_byte(&mut self, byte: u8)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::chunks_exact
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:572,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:575,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:576,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:577,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:578,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:586,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:587,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:588,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:589,1
    - Dst: remainder
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:592,1
    - Dst: Crc32::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:593,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 88
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 595
      start: 571
    functionDepth: 2
    functionLinenumber: 571
    functionLinenumberEnd: 595
    functionName: Crc32::process_buf_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc32.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - Result::chunks_exact
    - Crc32::process_byte
    - remainder
    - u32::from
    linkageType: ''
    returnType: void
    signature: 'fn process_buf_bytes(&mut self, buf: &[u8])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Crc32::new
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:606,1
    - Dst: u16::process_buf_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:607,1
    - Dst: Crc32::new
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:611,1
    - Dst: u16::process_buf_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:612,1
    - Dst: Crc32::new
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:616,1
    - Dst: u16::process_buf_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:617,1
    - Dst: Crc32::new
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:621,1
    - Dst: u16::process_buf_bytes
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:622,1
    - Dst: Crc32::new
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:626,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:627,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:628,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:629,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:630,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:631,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:632,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:633,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:634,1
    - Dst: u16::process_byte
      Src: /src/symphonia/symphonia-core/src/checksum/crc32.rs:635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 638
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 638
    functionName: tests::verify_crc32
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc32.rs
    functionUses: 0
    functionsReached:
    - Crc32::new
    - u16::process_buf_bytes
    - u16::process_byte
    linkageType: ''
    returnType: void
    signature: fn verify_crc32()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - state
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: Crc8Ccitt::new
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc8.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(state: u8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: Crc8Ccitt::crc
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc8.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: pub fn crc(&self) -> u8
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - byte
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: Crc8Ccitt::process_byte
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc8.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn process_byte(&mut self, byte: u8)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: Crc8Ccitt::process_buf_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/checksum/crc8.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn process_buf_bytes(&mut self, buf: &[u8])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Imdct::new_scaled
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 11
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: Imdct::new
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/mdct.rs
    functionUses: 1
    functionsReached:
    - Imdct::new_scaled
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(n: usize) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:43,1
    - Dst: Option::is_sign_positive
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:45,1
    - Dst: Option::abs
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:47,1
    - Dst: Option::sqrt
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:47,1
    - Dst: cos
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:51,1
    - Dst: sin
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:52,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:53,1
    - Dst: Complex::new
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:53,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:57,1
    - Dst: Fft::new
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:59,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 41
    argCount: 2
    argNames:
    - n
    - scale
    argTypes:
    - usize
    - f64
    constantsTouched: []
    func_position:
      end: 60
      start: 35
    functionDepth: 10
    functionLinenumber: 35
    functionLinenumberEnd: 60
    functionName: Imdct::new_scaled
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/mdct.rs
    functionUses: 3
    functionsReached:
    - Option::is_sign_positive
    - push
    - Option::abs
    - Fft::new
    - Option::sqrt
    - sin
    - cos
    - into_boxed_slice
    - Complex::new
    - Vec::with_capacity
    linkageType: ''
    returnType: Self
    signature: 'pub fn new_scaled(n: usize, scale: f64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:69,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:81,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:81,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:81,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:81,1
    - Dst: Complex::new
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:87,1
    - Dst: fft_inplace
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:91,1
    - Dst: '&mut [f32]::split_at_mut'
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:94,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:95,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:96,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:100,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:100,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:100,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:100,1
    - Dst: Option::conj
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:104,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:120,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:120,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:120,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:120,1
    - Dst: Option::conj
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:123,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 133
    argCount: 2
    argNames:
    - spec
    - out
    argTypes:
    - '&[f32]'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 146
      start: 67
    functionDepth: 11
    functionLinenumber: 67
    functionLinenumberEnd: 146
    functionName: Imdct::imdct
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/mdct.rs
    functionUses: 0
    functionsReached:
    - split_at_mut
    - zip
    - Option::conj
    - iter
    - fft_inplace
    - '&mut [f32]::split_at_mut'
    - iter_mut
    - size
    - Complex::new
    - enumerate
    linkageType: ''
    returnType: void
    signature: 'pub fn imdct(&mut self, spec: &[f32], out: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::len
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:158,1
    - Dst: Option::len
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:159,1
    - Dst: Self::iter_mut
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:163,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:163,1
    - Dst: take
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:163,1
    - Dst: Option::iter
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:164,1
    - Dst: copied
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:164,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:164,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:164,1
    - Dst: take
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:164,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:164,1
    - Dst: cos
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:170,1
    - Dst: sum
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 3
    argNames:
    - x
    - y
    - scale
    argTypes:
    - '&[f32]'
    - '&mut [f32]'
    - f64
    constantsTouched: []
    func_position:
      end: 175
      start: 154
    functionDepth: 11
    functionLinenumber: 154
    functionLinenumberEnd: 175
    functionName: tests::imdct_analytical
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/mdct.rs
    functionUses: 0
    functionsReached:
    - Self::iter_mut
    - Option::len
    - take
    - map
    - cos
    - Option::iter
    - sum
    - enumerate
    - copied
    linkageType: ''
    returnType: void
    signature: 'fn imdct_analytical(x: &[f32], y: &mut [f32], scale: f64)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:190,1
    - Dst: imdct_analytical
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:192,1
    - Dst: Imdct::new_scaled
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:194,1
    - Dst: imdct
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:195,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:198,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-core/src/dsp/mdct.rs:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 201
      start: 178
    functionDepth: 12
    functionLinenumber: 178
    functionLinenumberEnd: 201
    functionName: tests::verify_imdct
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/mdct.rs
    functionUses: 0
    functionsReached:
    - imdct
    - imdct_analytical
    - Imdct::new_scaled
    - f64::from
    - sqrt
    linkageType: ''
    returnType: void
    signature: fn verify_imdct()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 36
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 36
    functionName: fft_twiddle_table
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:54,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:55,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:56,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:57,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:58,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:59,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:60,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:61,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:62,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:63,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 1
    argNames:
    - n
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 67
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 67
    functionName: fft_twiddle_factors
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 1
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: '&''static [Complex'
    signature: 'fn fft_twiddle_factors(n: usize) -> &''static [Complex<f32>]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: rustfft::FftPlanner::<f32>::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:30,1
    - Dst: Self::plan_fft_forward
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:32,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - n
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 38
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 38
    functionName: Fft::new
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 5
    functionsReached:
    - Self::plan_fft_forward
    - into_boxed_slice
    - rustfft::FftPlanner::<f32>::new
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(n: usize) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: Fft::size
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: pub fn size(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: process_with_scratch
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut [Complex<f32>]'
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: Fft::fft_inplace
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 0
    functionsReached:
    - process_with_scratch
    linkageType: ''
    returnType: void
    signature: 'pub fn fft_inplace(&mut self, x: &mut [Complex<f32>])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:52,1
    - Dst: process_with_scratch
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[Complex<f32>]'
    - '&mut [Complex<f32>]'
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: Fft::fft
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 0
    functionsReached:
    - Self::copy_from_slice
    - process_with_scratch
    linkageType: ''
    returnType: void
    signature: 'pub fn fft(&mut self, x: &[Complex<f32>], y: &mut [Complex<f32>])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: rustfft::FftPlanner::<f32>::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:76,1
    - Dst: Self::plan_fft_inverse
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:78,1
    - Dst: into_boxed_slice
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - n
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 83
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 83
    functionName: Ifft::new
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 4
    functionsReached:
    - into_boxed_slice
    - rustfft::FftPlanner::<f32>::new
    - Self::plan_fft_inverse
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(n: usize) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: Ifft::size
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: pub fn size(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::copy_from_slice
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:97,1
    - Dst: process_with_scratch
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:98,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:101,1
    - Dst: Self::iter_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[Complex<f32>]'
    - '&mut [Complex<f32>]'
    constantsTouched: []
    func_position:
      end: 106
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 106
    functionName: Ifft::ifft
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 0
    functionsReached:
    - Self::len
    - Self::copy_from_slice
    - Self::iter_mut
    - process_with_scratch
    linkageType: ''
    returnType: void
    signature: 'pub fn ifft(&mut self, x: &[Complex<f32>], y: &mut [Complex<f32>])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: process_with_scratch
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:111,1
    - Dst: Option::len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:114,1
    - Dst: Option::iter_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut [Complex<f32>]'
    constantsTouched: []
    func_position:
      end: 119
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 119
    functionName: Ifft::ifft_inplace
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
    functionUses: 0
    functionsReached:
    - Option::len
    - Option::iter_mut
    - process_with_scratch
    linkageType: ''
    returnType: void
    signature: 'pub fn ifft_inplace(&mut self, x: &mut [Complex<f32>])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [Complex<f32>]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:224,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:224,1
    - Dst: '&mut [Complex<f32>]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:224,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:224,1
    - Dst: '&[Complex<f32>]::chunks_exact'
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 3
    argNames:
    - even
    - odd
    - twiddles
    argTypes:
    - '&mut [Complex<f32>]'
    - '&mut [Complex<f32>]'
    - '&[Complex<f32>]'
    constantsTouched: []
    func_position:
      end: 238
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 238
    functionName: t::r::a::n::s::f::o::r::m::merge
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 0
    functionsReached:
    - zip
    - '&[Complex<f32>]::chunks_exact'
    - '&mut [Complex<f32>]::chunks_exact_mut'
    linkageType: ''
    returnType: void
    signature: 'fn merge(even: &mut [Complex<f32>], odd: &mut [Complex<f32>], twiddles:
      &[Complex<f32>])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 287
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 287
    functionName: complex
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fft16
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:299,1
    - Dst: fft16
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:300,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:309,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:310,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:311,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:312,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:313,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:314,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:315,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:316,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:317,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:318,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:319,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:320,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:321,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:322,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 272
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut [Complex<f32>; 32]'
    constantsTouched: []
    func_position:
      end: 359
      start: 289
    functionDepth: 4
    functionLinenumber: 289
    functionLinenumberEnd: 359
    functionName: fft32
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 1
    functionsReached:
    - fft16
    - complex
    linkageType: ''
    returnType: void
    signature: 'fn fft32(x: &mut [Complex<f32>; 32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fft8
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:366,1
    - Dst: fft8
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:367,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:376,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:377,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:378,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:379,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:380,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:381,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 144
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut [Complex<f32>; 16]'
    constantsTouched: []
    func_position:
      end: 402
      start: 362
    functionDepth: 3
    functionLinenumber: 362
    functionLinenumberEnd: 402
    functionName: fft16
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 1
    functionsReached:
    - complex
    - fft8
    linkageType: ''
    returnType: void
    signature: 'fn fft16(x: &mut [Complex<f32>; 16])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fft4
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:409,1
    - Dst: fft4
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:410,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:419,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:420,1
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 80
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut [Complex<f32>; 8]'
    constantsTouched: []
    func_position:
      end: 433
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 433
    functionName: fft8
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 1
    functionsReached:
    - complex
    - fft4
    linkageType: ''
    returnType: void
    signature: 'fn fft8(x: &mut [Complex<f32>; 8])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: complex
      Src: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 36
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut [Complex<f32>; 4]'
    constantsTouched: []
    func_position:
      end: 447
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 447
    functionName: fft4
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 1
    functionsReached:
    - complex
    linkageType: ''
    returnType: void
    signature: 'fn fft4(x: &mut [Complex<f32>; 4])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut [Complex<f32>; 2]'
    constantsTouched: []
    func_position:
      end: 454
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 454
    functionName: fft2
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn fft2(x: &mut [Complex<f32>; 2])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:41,1
    - Dst: Option::len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:43,1
    - Dst: Self::iter_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:45,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:45,1
    - Dst: Option::iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:49,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:49,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:50,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:51,1
    - Dst: cos
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:55,1
    - Dst: sin
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 64
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[Complex<f32>]'
    - '&mut [Complex<f32>]'
    constantsTouched: []
    func_position:
      end: 64
      start: 38
    functionDepth: 11
    functionLinenumber: 38
    functionLinenumberEnd: 64
    functionName: tests::dft_naive
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - Self::iter_mut
    - Option::len
    - f64::from
    - sin
    - cos
    - Option::iter
    - enumerate
    linkageType: ''
    returnType: void
    signature: 'fn dft_naive(x: &[Complex<f32>], y: &mut [Complex<f32>])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:68,1
    - Dst: Option::iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:70,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:70,1
    - Dst: 'iter().map(|x| Complex { re: x.im, im: x.re }).collect::<Vec<Complex<f32>>>'
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:70,1
    - Dst: dft_naive
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:72,1
    - Dst: Self::iter_mut
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - '&[Complex<f32>]'
    - '&mut [Complex<f32>]'
    constantsTouched: []
    func_position:
      end: 79
      start: 67
    functionDepth: 11
    functionLinenumber: 67
    functionLinenumberEnd: 79
    functionName: tests::idft_naive
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - Self::iter_mut
    - Option::len
    - map
    - Option::iter
    - dft_naive
    - 'iter().map(|x| Complex { re: x.im, im: x.re }).collect::<Vec<Complex<f32>>>'
    linkageType: ''
    returnType: void
    signature: 'fn idft_naive(x: &[Complex<f32>], y: &mut [Complex<f32>])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: abs
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:84,1
    - Dst: abs
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - lhs
    - rhs
    - epsilon
    argTypes:
    - Complex<f32>
    - Complex<f32>
    - f32
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: tests::check_complex
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - abs
    linkageType: ''
    returnType: bool
    signature: 'fn check_complex(lhs: Complex<f32>, rhs: Complex<f32>, epsilon: f32)
      -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:157,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:157,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:158,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:158,1
    - Dst: dft_naive
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:161,1
    - Dst: Fft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:164,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:164,1
    - Dst: Self::fft
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:164,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:166,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:166,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 169
      start: 156
    functionDepth: 15
    functionLinenumber: 156
    functionLinenumberEnd: 169
    functionName: tests::verify_fft
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - Self::fft
    - len
    - Fft::new
    - zip
    - iter
    - dft_naive
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_fft()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:173,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:173,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:174,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:174,1
    - Dst: dft_naive
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:177,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:180,1
    - Dst: Fft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:181,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:181,1
    - Dst: Self::fft_inplace
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:181,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:183,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:183,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 186
      start: 172
    functionDepth: 15
    functionLinenumber: 172
    functionLinenumberEnd: 186
    functionName: tests::verify_fft_inplace
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - len
    - Self::fft_inplace
    - Fft::new
    - zip
    - iter
    - dft_naive
    - copy_from_slice
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_fft_inplace()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:190,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:190,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:191,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:191,1
    - Dst: idft_naive
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:194,1
    - Dst: Ifft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:197,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:197,1
    - Dst: Self::ifft
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:197,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:199,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:199,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 202
      start: 189
    functionDepth: 15
    functionLinenumber: 189
    functionLinenumberEnd: 202
    functionName: tests::verify_ifft
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - Ifft::new
    - len
    - zip
    - Self::ifft
    - iter
    - Default::default
    - idft_naive
    linkageType: ''
    returnType: void
    signature: fn verify_ifft()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:206,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:206,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:207,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:207,1
    - Dst: idft_naive
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:210,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:213,1
    - Dst: Ifft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:214,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:214,1
    - Dst: Self::ifft_inplace
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:214,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:216,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:216,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 219
      start: 205
    functionDepth: 15
    functionLinenumber: 205
    functionLinenumberEnd: 219
    functionName: tests::verify_ifft_inplace
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - len
    - Ifft::new
    - zip
    - Self::ifft_inplace
    - iter
    - copy_from_slice
    - Default::default
    - idft_naive
    linkageType: ''
    returnType: void
    signature: fn verify_ifft_inplace()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:223,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:223,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:224,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:224,1
    - Dst: Fft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:226,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:226,1
    - Dst: fft
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:227,1
    - Dst: Ifft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:228,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:228,1
    - Dst: ifft
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:229,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:231,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:231,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:231,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 234
      start: 222
    functionDepth: 15
    functionLinenumber: 222
    functionLinenumberEnd: 234
    functionName: tests::verify_fft_reversible
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - fft
    - Ifft::new
    - len
    - ifft
    - Fft::new
    - zip
    - iter
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_fft_reversible()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:238,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:238,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:239,1
    - Dst: Fft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:241,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:241,1
    - Dst: fft_inplace
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:242,1
    - Dst: Ifft::new
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:243,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:243,1
    - Dst: ifft_inplace
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:244,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:246,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:246,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 249
      start: 237
    functionDepth: 15
    functionLinenumber: 237
    functionLinenumberEnd: 249
    functionName: tests::verify_fft_inplace_reversible
    functionSourceFile: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
    functionUses: 0
    functionsReached:
    - len
    - Ifft::new
    - Fft::new
    - zip
    - iter
    - fft_inplace
    - ifft_inplace
    - copy_from_slice
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_fft_inplace_reversible()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::wrapping_add
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:36,1
    - Dst: wrapping_mul
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:38,1
    - Dst: wrapping_mul
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 1
    argNames:
    - x
    argTypes:
    - '&mut u64'
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: dither::split_mix_64
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - wrapping_mul
    - Option::wrapping_add
    linkageType: ''
    returnType: u64
    signature: 'fn split_mix_64(x: &mut u64) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split_mix_64
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:57,1
    - Dst: split_mix_64
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - seed
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 68
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 68
    functionName: dither::Xoshiro128pp::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - split_mix_64
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(mut seed: u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:72,1
    - Dst: Option::rotate_left
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:74,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:74,1
    - Dst: rotate_left
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 88
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 88
    functionName: dither::Xoshiro128pp::next
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - wrapping_add
    - rotate_left
    - Option::rotate_left
    linkageType: ''
    returnType: u32
    signature: pub fn next(&mut self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 452
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 452
    functionName: impl_convert
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 459
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionName: i8_to_u8
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - wrapping_add
    linkageType: ''
    returnType: u8
    signature: 'fn i8_to_u8(s: i8) -> u8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - i16
    constantsTouched: []
    func_position:
      end: 479
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 479
    functionName: i16_to_u16
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - wrapping_add
    linkageType: ''
    returnType: u16
    signature: 'fn i16_to_u16(s: i16) -> u16'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::clamped
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:498,1
    - Dst: Self::inner
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:498,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - i24
    constantsTouched: []
    func_position:
      end: 499
      start: 497
    functionDepth: 1
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionName: i24_to_u32
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - Result::clamped
    - wrapping_add
    - Self::inner
    linkageType: ''
    returnType: u32
    signature: 'fn i24_to_u32(s: i24) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - i32
    constantsTouched: []
    func_position:
      end: 519
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 519
    functionName: i32_to_u32
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - wrapping_add
    linkageType: ''
    returnType: u32
    signature: 'fn i32_to_u32(s: i32) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: T::from_sample
      Src: /src/symphonia/symphonia-core/src/audio/conv.rs:635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 636
      start: 634
    functionDepth: 1
    functionLinenumber: 634
    functionLinenumberEnd: 636
    functionName: F::into_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached:
    - T::from_sample
    linkageType: ''
    returnType: T
    signature: fn into_sample(self) -> T
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 720
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 720
    functionName: tests::verify_u8_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_u8_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 763
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 763
    functionName: tests::verify_u16_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_u16_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 806
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 806
    functionName: tests::verify_u24_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_u24_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 849
      start: 809
    functionDepth: 0
    functionLinenumber: 809
    functionLinenumberEnd: 849
    functionName: tests::verify_u32_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_u32_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 892
      start: 852
    functionDepth: 0
    functionLinenumber: 852
    functionLinenumberEnd: 892
    functionName: tests::verify_i8_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_i8_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 935
      start: 895
    functionDepth: 0
    functionLinenumber: 895
    functionLinenumberEnd: 935
    functionName: tests::verify_i16_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_i16_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 978
      start: 938
    functionDepth: 0
    functionLinenumber: 938
    functionLinenumberEnd: 978
    functionName: tests::verify_i24_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_i24_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 981
    functionDepth: 0
    functionLinenumber: 981
    functionLinenumberEnd: 1021
    functionName: tests::verify_i32_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_i32_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1024
    functionDepth: 0
    functionLinenumber: 1024
    functionLinenumberEnd: 1064
    functionName: tests::verify_f64_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_f64_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1107
      start: 1067
    functionDepth: 0
    functionLinenumber: 1067
    functionLinenumberEnd: 1107
    functionName: tests::verify_f32_from_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/conv.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_f32_from_sample()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: u8::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: i8::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: u16::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: i16::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:129,1
    - Dst: util::clamp::clamp_u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 14
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: u24::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - util::clamp::clamp_u24
    - u24
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:139,1
    - Dst: util::clamp::clamp_i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 15
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: i24::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    - util::clamp::clamp_i24
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: u32::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: i32::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: util::clamp::clamp_f32
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 170
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionName: f32::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - util::clamp::clamp_f32
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: util::clamp::clamp_f64
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: f64::clamped
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - util::clamp::clamp_f64
    linkageType: ''
    returnType: Self
    signature: fn clamped(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 196
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionName: shl_impl
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 209
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 209
    functionName: shr_impl
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: shl_impl
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:2,1
    - Dst: shr_impl
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:3,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 216
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 216
    functionName: impl_shifts
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - shr_impl
    - shl_impl
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: i24::inner
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: pub fn inner(self) -> i32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 239
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 239
    functionName: i24::to_le_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached:
    - to_le_bytes
    linkageType: ''
    returnType: '[u8; 3]'
    signature: pub fn to_le_bytes(self) -> [u8; 3]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 248
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 248
    functionName: i24::to_be_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached:
    - to_be_bytes
    linkageType: ''
    returnType: '[u8; 3]'
    signature: pub fn to_be_bytes(self) -> [u8; 3]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:253,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 263
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 263
    functionName: i24::to_ne_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached:
    - to_ne_bytes
    linkageType: ''
    returnType: '[u8; 3]'
    signature: pub fn to_ne_bytes(self) -> [u8; 3]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 269
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionName: i24::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:286,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - i8
    constantsTouched: []
    func_position:
      end: 287
      start: 285
    functionDepth: 15
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionName: i24::from
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    - i32::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(val: i8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 15
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: i24::add
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn add(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 15
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: i24::sub
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn sub(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 314
      start: 312
    functionDepth: 15
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionName: i24::mul
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn mul(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 323
      start: 321
    functionDepth: 15
    functionLinenumber: 321
    functionLinenumberEnd: 323
    functionName: i24::div
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn div(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 332
      start: 330
    functionDepth: 15
    functionLinenumber: 330
    functionLinenumberEnd: 332
    functionName: i24::not
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: fn not(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 341
      start: 339
    functionDepth: 15
    functionLinenumber: 339
    functionLinenumberEnd: 341
    functionName: i24::rem
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn rem(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 350
      start: 348
    functionDepth: 15
    functionLinenumber: 348
    functionLinenumberEnd: 350
    functionName: i24::shl
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn shl(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 359
      start: 357
    functionDepth: 15
    functionLinenumber: 357
    functionLinenumberEnd: 359
    functionName: i24::shr
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn shr(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 382
      start: 380
    functionDepth: 15
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionName: i24::bitand
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn bitand(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 391
      start: 389
    functionDepth: 15
    functionLinenumber: 389
    functionLinenumberEnd: 391
    functionName: i24::bitor
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn bitor(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 400
      start: 398
    functionDepth: 15
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionName: i24::bitxor
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24
    linkageType: ''
    returnType: Self
    signature: 'fn bitxor(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 415
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 415
    functionName: u24::inner
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: pub fn inner(self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 424
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 424
    functionName: u24::to_le_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached:
    - to_le_bytes
    linkageType: ''
    returnType: '[u8; 3]'
    signature: pub fn to_le_bytes(self) -> [u8; 3]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 433
      start: 428
    functionDepth: 2
    functionLinenumber: 428
    functionLinenumberEnd: 433
    functionName: u24::to_be_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached:
    - to_be_bytes
    linkageType: ''
    returnType: '[u8; 3]'
    signature: pub fn to_be_bytes(self) -> [u8; 3]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 448
      start: 437
    functionDepth: 2
    functionLinenumber: 437
    functionLinenumberEnd: 448
    functionName: u24::to_ne_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 1
    functionsReached:
    - to_ne_bytes
    linkageType: ''
    returnType: '[u8; 3]'
    signature: pub fn to_ne_bytes(self) -> [u8; 3]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 454
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionName: u24::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: fmt::Result
    signature: 'fn fmt(&self, f: &mut fmt::Formatter<''_>) -> fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:471,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 472
      start: 470
    functionDepth: 14
    functionLinenumber: 470
    functionLinenumberEnd: 472
    functionName: u24::from
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    - u32::from
    linkageType: ''
    returnType: Self
    signature: 'fn from(val: u8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 481
      start: 479
    functionDepth: 14
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionName: u24::add
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn add(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 490
      start: 488
    functionDepth: 14
    functionLinenumber: 488
    functionLinenumberEnd: 490
    functionName: u24::sub
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn sub(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 499
      start: 497
    functionDepth: 14
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionName: u24::mul
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn mul(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 508
      start: 506
    functionDepth: 14
    functionLinenumber: 506
    functionLinenumberEnd: 508
    functionName: u24::div
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn div(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 517
      start: 515
    functionDepth: 14
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionName: u24::not
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: fn not(self) -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 526
      start: 524
    functionDepth: 14
    functionLinenumber: 524
    functionLinenumberEnd: 526
    functionName: u24::rem
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn rem(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:534,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 535
      start: 533
    functionDepth: 14
    functionLinenumber: 533
    functionLinenumberEnd: 535
    functionName: u24::shl
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn shl(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:543,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 544
      start: 542
    functionDepth: 14
    functionLinenumber: 542
    functionLinenumberEnd: 544
    functionName: u24::shr
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn shr(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 567
      start: 565
    functionDepth: 14
    functionLinenumber: 565
    functionLinenumberEnd: 567
    functionName: u24::bitand
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn bitand(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 576
      start: 574
    functionDepth: 14
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionName: u24::bitor
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn bitor(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - other
    argTypes:
    - Self
    constantsTouched: []
    func_position:
      end: 585
      start: 583
    functionDepth: 14
    functionLinenumber: 583
    functionLinenumberEnd: 585
    functionName: u24::bitxor
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24
    linkageType: ''
    returnType: Self
    signature: 'fn bitxor(self, other: Self) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u8::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 639
      start: 637
    functionDepth: 2
    functionLinenumber: 637
    functionLinenumberEnd: 639
    functionName: u8::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u8::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u8::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 644
      start: 642
    functionDepth: 2
    functionLinenumber: 642
    functionLinenumberEnd: 644
    functionName: u8::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u8::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u8::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:648,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 649
      start: 647
    functionDepth: 2
    functionLinenumber: 647
    functionLinenumberEnd: 649
    functionName: u8::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u8::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 658
      start: 656
    functionDepth: 2
    functionLinenumber: 656
    functionLinenumberEnd: 658
    functionName: u16::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u16::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:662,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 663
      start: 661
    functionDepth: 2
    functionLinenumber: 661
    functionLinenumberEnd: 663
    functionName: u16::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u16::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 668
      start: 666
    functionDepth: 2
    functionLinenumber: 666
    functionLinenumberEnd: 668
    functionName: u16::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u16::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 677
      start: 675
    functionDepth: 3
    functionLinenumber: 675
    functionLinenumberEnd: 677
    functionName: u24::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:681,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 682
      start: 680
    functionDepth: 3
    functionLinenumber: 680
    functionLinenumberEnd: 682
    functionName: u24::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u24::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:686,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 687
      start: 685
    functionDepth: 3
    functionLinenumber: 685
    functionLinenumberEnd: 687
    functionName: u24::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u24::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u32::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 696
      start: 694
    functionDepth: 2
    functionLinenumber: 694
    functionLinenumberEnd: 696
    functionName: u32::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u32::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u32::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 701
      start: 699
    functionDepth: 2
    functionLinenumber: 699
    functionLinenumberEnd: 701
    functionName: u32::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u32::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u32::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 706
      start: 704
    functionDepth: 2
    functionLinenumber: 704
    functionLinenumberEnd: 706
    functionName: u32::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - u32::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i8::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 715
      start: 713
    functionDepth: 2
    functionLinenumber: 713
    functionLinenumberEnd: 715
    functionName: i8::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i8::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i8::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 720
      start: 718
    functionDepth: 2
    functionLinenumber: 718
    functionLinenumberEnd: 720
    functionName: i8::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i8::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i8::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 725
      start: 723
    functionDepth: 2
    functionLinenumber: 723
    functionLinenumberEnd: 725
    functionName: i8::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i8::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i16::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 734
      start: 732
    functionDepth: 2
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionName: i16::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i16::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i16::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 739
      start: 737
    functionDepth: 2
    functionLinenumber: 737
    functionLinenumberEnd: 739
    functionName: i16::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i16::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i16::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 744
      start: 742
    functionDepth: 2
    functionLinenumber: 742
    functionLinenumberEnd: 744
    functionName: i16::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i16::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 753
      start: 751
    functionDepth: 2
    functionLinenumber: 751
    functionLinenumberEnd: 753
    functionName: i24::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 758
      start: 756
    functionDepth: 2
    functionLinenumber: 756
    functionLinenumberEnd: 758
    functionName: i24::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i24::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 763
      start: 761
    functionDepth: 2
    functionLinenumber: 761
    functionLinenumberEnd: 763
    functionName: i24::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i24::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 772
      start: 770
    functionDepth: 2
    functionLinenumber: 770
    functionLinenumberEnd: 772
    functionName: i32::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i32::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 777
      start: 775
    functionDepth: 2
    functionLinenumber: 775
    functionLinenumberEnd: 777
    functionName: i32::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i32::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 782
      start: 780
    functionDepth: 2
    functionLinenumber: 780
    functionLinenumberEnd: 782
    functionName: i32::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - i32::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f32::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:790,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 791
      start: 789
    functionDepth: 2
    functionLinenumber: 789
    functionLinenumberEnd: 791
    functionName: f32::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - f32::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f32::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 796
      start: 794
    functionDepth: 2
    functionLinenumber: 794
    functionLinenumberEnd: 796
    functionName: f32::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - f32::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f32::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 801
      start: 799
    functionDepth: 2
    functionLinenumber: 799
    functionLinenumberEnd: 801
    functionName: f32::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - f32::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f64::to_ne_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 810
      start: 808
    functionDepth: 2
    functionLinenumber: 808
    functionLinenumberEnd: 810
    functionName: f64::to_ne_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - f64::to_ne_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_ne_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f64::to_le_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 815
      start: 813
    functionDepth: 2
    functionLinenumber: 813
    functionLinenumberEnd: 815
    functionName: f64::to_le_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - f64::to_le_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_le_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f64::to_be_bytes
      Src: /src/symphonia/symphonia-core/src/audio/sample.rs:819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 820
      start: 818
    functionDepth: 2
    functionLinenumber: 818
    functionLinenumberEnd: 820
    functionName: f64::to_be_sample_bytes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/sample.rs
    functionUses: 0
    functionsReached:
    - f64::to_be_bytes
    linkageType: ''
    returnType: Self::RawType
    signature: fn to_be_sample_bytes(self) -> Self::RawType
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_shl
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:119,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:119,1
    - Dst: Position::from_bits
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - count
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 120
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionName: Position::from_count
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 3
    functionsReached:
    - and_then
    - checked_shl
    - Position::from_bits
    linkageType: ''
    returnType: Option
    signature: 'pub fn from_count(count: u32) -> Option<Position>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Position::from_count
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - count
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 135
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 135
    functionName: Position::from_wave_channel_count
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 0
    functionsReached:
    - Position::from_count
    linkageType: ''
    returnType: Option
    signature: 'pub fn from_wave_channel_count(count: u32) -> Option<Position>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Position::from_bits
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:144,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - mask
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 149
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 149
    functionName: Position::from_wave_channel_mask
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 2
    functionsReached:
    - Position::from_bits
    - u64::from
    linkageType: ''
    returnType: Option
    signature: 'pub fn from_wave_channel_mask(mask: u32) -> Option<Position>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Position::iter
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:160,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:160,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:163,1
    - Dst: u64::bits
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:164,1
    - Dst: io::Result::trailing_zeros
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:164,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:163,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:163,1
    - Dst: "iter()\n            .map(|pos| {\n                POSITION_NAMES\n   \
        \                 .get(pos.bits().trailing_zeros() as usize)\n           \
        \         .unwrap_or(&\"???\")\n                    .to_string()\n       \
        \     })\n            .collect::<Vec<_>>"
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:160,1
    - Dst: join
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 172
      start: 159
    functionDepth: 11
    functionLinenumber: 159
    functionLinenumberEnd: 172
    functionName: Position::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 0
    functionsReached:
    - join
    - unwrap_or
    - Position::iter
    - get
    - "iter()\n            .map(|pos| {\n                POSITION_NAMES\n        \
      \            .get(pos.bits().trailing_zeros() as usize)\n                  \
      \  .unwrap_or(&\"???\")\n                    .to_string()\n            })\n\
      \            .collect::<Vec<_>>"
    - map
    - to_string
    - io::Result::trailing_zeros
    - u64::bits
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 235
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 235
    functionName: AmbisonicBFormat::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ChannelLabel::AmbisonicBFormat
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - AmbisonicBFormat
    constantsTouched: []
    func_position:
      end: 270
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionName: ChannelLabel::from
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 0
    functionsReached:
    - ChannelLabel::AmbisonicBFormat
    linkageType: ''
    returnType: Self
    signature: 'fn from(value: AmbisonicBFormat) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bits
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:312,1
    - Dst: count_ones
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:312,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:313,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:314,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:314,1
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 318
      start: 310
    functionDepth: 16
    functionLinenumber: 310
    functionLinenumberEnd: 318
    functionName: Channels::count
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 3
    functionsReached:
    - count_ones
    - usize::from
    - len
    - bits
    linkageType: ''
    returnType: usize
    signature: pub fn count(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bits
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:333,1
    - Dst: u64::bits
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:333,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:334,1
    - Dst: Result::count_ones
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - pos
    argTypes:
    - Position
    constantsTouched: []
    func_position:
      end: 338
      start: 325
    functionDepth: 16
    functionLinenumber: 325
    functionLinenumberEnd: 338
    functionName: Channels::get_canonical_index_for_positioned_channel
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 2
    functionsReached:
    - Result::count_ones
    - u64::bits
    - Some
    - bits
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_canonical_index_for_positioned_channel(&self, pos: Position)
      -> Option<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Channels::Custom
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:355,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - labels
    argTypes:
    - Box<[ChannelLabel]>
    constantsTouched: []
    func_position:
      end: 356
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionName: Channels::from
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 0
    functionsReached:
    - Channels::Custom
    linkageType: ''
    returnType: Self
    signature: 'fn from(labels: Box<[ChannelLabel]>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::fmt::Display::fmt
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:362,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:378,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:380,1
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:382,1
    - Dst: u64::bits
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:383,1
    - Dst: io::Result::trailing_zeros
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:383,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:382,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:382,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-core/src/audio/channels.rs:390,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - f
    argTypes:
    - '&mut std::fmt::Formatter<''_>'
    constantsTouched: []
    func_position:
      end: 397
      start: 360
    functionDepth: 10
    functionLinenumber: 360
    functionLinenumberEnd: 397
    functionName: Channels::fmt
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/channels.rs
    functionUses: 0
    functionsReached:
    - unwrap_or
    - get
    - Result::push
    - iter
    - Vec::new
    - to_string
    - io::Result::trailing_zeros
    - u64::bits
    - std::fmt::Display::fmt
    linkageType: ''
    returnType: std::fmt::Result
    signature: 'fn fmt(&self, f: &mut std::fmt::Formatter<''_>) -> std::fmt::Result'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: impl_generic_func
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioBuffer::U8
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:64,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:64,1
    - Dst: GenericAudioBuffer::U16
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:65,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:65,1
    - Dst: GenericAudioBuffer::U24
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:66,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:66,1
    - Dst: GenericAudioBuffer::U32
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:67,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:67,1
    - Dst: GenericAudioBuffer::S8
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:68,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:68,1
    - Dst: GenericAudioBuffer::S16
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:69,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:69,1
    - Dst: GenericAudioBuffer::S24
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:70,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:70,1
    - Dst: GenericAudioBuffer::S32
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:71,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:71,1
    - Dst: GenericAudioBuffer::F32
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:72,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:72,1
    - Dst: GenericAudioBuffer::F64
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:73,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 3
    argNames:
    - format
    - spec
    - capacity
    argTypes:
    - SampleFormat
    - AudioSpec
    - usize
    constantsTouched: []
    func_position:
      end: 75
      start: 62
    functionDepth: 11
    functionLinenumber: 62
    functionLinenumberEnd: 75
    functionName: GenericAudioBuffer::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached:
    - GenericAudioBuffer::F64
    - GenericAudioBuffer::S8
    - GenericAudioBuffer::F32
    - GenericAudioBuffer::U8
    - GenericAudioBuffer::S24
    - GenericAudioBuffer::S16
    - GenericAudioBuffer::U24
    - GenericAudioBuffer::U16
    - AudioBuffer::new
    - GenericAudioBuffer::S32
    - GenericAudioBuffer::U32
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(format: SampleFormat, spec: AudioSpec, capacity: usize)
      -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: GenericAudioBuffer::spec
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioSpec'
    signature: pub fn spec(&self) -> &AudioSpec
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: GenericAudioBuffer::num_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn num_planes(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: GenericAudioBuffer::is_empty
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_empty(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: GenericAudioBuffer::frames
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: GenericAudioBuffer::is_unused
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_unused(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: GenericAudioBuffer::capacity
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn capacity(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: impl_generic_func
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: GenericAudioBuffer::clear
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - impl_generic_func
    linkageType: ''
    returnType: void
    signature: pub fn clear(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - new_capacity
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: GenericAudioBuffer::grow_capacity
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn grow_capacity(&mut self, new_capacity: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - new_len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: GenericAudioBuffer::resize_with_silence
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn resize_with_silence(&mut self, new_len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - new_len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 137
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionName: GenericAudioBuffer::resize_uninit
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn resize_uninit(&mut self, new_len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - num_frames
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: GenericAudioBuffer::render_silence
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn render_silence(&mut self, num_frames: Option<usize>) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - num_frames
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: GenericAudioBuffer::render_uninit
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn render_uninit(&mut self, num_frames: Option<usize>) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - shift
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: GenericAudioBuffer::shift
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn shift(&mut self, shift: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioSlice::U8
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:162,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:162,1
    - Dst: GenericAudioSlice::U16
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:163,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:163,1
    - Dst: GenericAudioSlice::U24
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:164,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:164,1
    - Dst: GenericAudioSlice::U32
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:165,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:165,1
    - Dst: GenericAudioSlice::S8
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:166,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:166,1
    - Dst: GenericAudioSlice::S16
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:167,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:167,1
    - Dst: GenericAudioSlice::S24
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:168,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:168,1
    - Dst: GenericAudioSlice::S32
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:169,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:169,1
    - Dst: GenericAudioSlice::F32
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:170,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:170,1
    - Dst: GenericAudioSlice::F64
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:171,1
    - Dst: Result::slice
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 1
    argNames:
    - range
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 173
      start: 160
    functionDepth: 3
    functionLinenumber: 160
    functionLinenumberEnd: 173
    functionName: GenericAudioBuffer::slice
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - GenericAudioSlice::S32
    - GenericAudioSlice::S24
    - GenericAudioSlice::F64
    - GenericAudioSlice::S16
    - GenericAudioSlice::U32
    - GenericAudioSlice::F32
    - GenericAudioSlice::U24
    - Result::slice
    - GenericAudioSlice::U8
    - GenericAudioSlice::U16
    - GenericAudioSlice::S8
    linkageType: ''
    returnType: GenericAudioSlice
    signature: 'pub fn slice<R: RangeBounds<usize>>(&self, range: R) -> GenericAudioSlice<''_>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - num_frames
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 179
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionName: GenericAudioBuffer::truncate
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn truncate(&mut self, num_frames: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 2
    argNames:
    - start
    - end
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: GenericAudioBuffer::trim
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn trim(&mut self, start: usize, end: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioBuffer::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:188,1
    - Dst: GenericAudioBuffer::frames
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: GenericAudioBuffer::samples_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - GenericAudioBuffer::num_planes
    - GenericAudioBuffer::frames
    linkageType: ''
    returnType: usize
    signature: pub fn samples_interleaved(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioBuffer::frames
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: GenericAudioBuffer::samples_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - GenericAudioBuffer::frames
    linkageType: ''
    returnType: usize
    signature: pub fn samples_planar(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: impl_generic_func
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Dst'
    constantsTouched: []
    func_position:
      end: 203
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionName: GenericAudioBuffer::copy_to
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - impl_generic_func
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to<Sout, Dst>(&self, dst: &mut Dst)whereSout: ConvertibleSample,Dst:
      AudioMut<Sout>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 214
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionName: GenericAudioBuffer::copy_to_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice_interleaved<Sout, Dst>(&self, dst: Dst)whereSout:
      ConvertibleSample,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 225
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 225
    functionName: GenericAudioBuffer::copy_to_slice_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice_planar<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      ConvertibleSample,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Sout>'
    constantsTouched: []
    func_position:
      end: 235
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 235
    functionName: GenericAudioBuffer::copy_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_vec_interleaved<Sout>(&self, dst: &mut Vec<Sout>)whereSout:
      ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<Sout>>'
    constantsTouched: []
    func_position:
      end: 245
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 245
    functionName: GenericAudioBuffer::copy_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_vecs_planar<Sout>(&self, dst: &mut Vec<Vec<Sout>>)whereSout:
      ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 257
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 257
    functionName: GenericAudioBuffer::copy_bytes_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_interleaved_as<Sout, Dst>(&self, dst: Dst)whereSout:
      SampleBytes + ConvertibleSample,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 269
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 269
    functionName: GenericAudioBuffer::copy_bytes_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_planar_as<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      SampleBytes + ConvertibleSample,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 279
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 279
    functionName: GenericAudioBuffer::copy_bytes_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_interleaved<Dst>(&self, dst: Dst)whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 289
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 289
    functionName: GenericAudioBuffer::copy_bytes_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_planar<Dst>(&self, dst: &mut [Dst])whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: GenericAudioBuffer::copy_bytes_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vec_interleaved(&self, dst: &mut Vec<u8>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 307
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 307
    functionName: GenericAudioBuffer::copy_bytes_to_vec_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vec_interleaved_as<Sout>(&self, dst: &mut Vec<u8>)whereSout:
      SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 314
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionName: GenericAudioBuffer::copy_bytes_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vecs_planar(&self, dst: &mut Vec<Vec<u8>>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 325
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 325
    functionName: GenericAudioBuffer::copy_bytes_to_vecs_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vecs_planar_as<Sout>(&self, dst: &mut Vec<Vec<u8>>)whereSout:
      SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 333
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 333
    functionName: GenericAudioBuffer::byte_len_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_as<Sout>(&self) -> usizewhereSout: SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 342
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 342
    functionName: GenericAudioBuffer::byte_len_per_plane_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_per_plane_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionName: GenericAudioBuffer::byte_len_per_frame_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_per_frame_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 356
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionName: GenericAudioBuffer::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 361
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionName: GenericAudioBuffer::byte_len_per_plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len_per_plane(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 366
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 366
    functionName: GenericAudioBuffer::byte_len_per_frame
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len_per_frame(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 412
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 412
    functionName: impl_generic_ref_func
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 418
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 418
    functionName: GenericAudioBufferRef::spec
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: '&AudioSpec'
    signature: pub fn spec(&self) -> &AudioSpec
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 423
      start: 421
    functionDepth: 0
    functionLinenumber: 421
    functionLinenumberEnd: 423
    functionName: GenericAudioBufferRef::num_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn num_planes(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 428
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 428
    functionName: GenericAudioBufferRef::is_empty
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_empty(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 433
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 433
    functionName: GenericAudioBufferRef::frames
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 440
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 440
    functionName: GenericAudioBufferRef::is_unused
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_unused(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 446
      start: 444
    functionDepth: 0
    functionLinenumber: 444
    functionLinenumberEnd: 446
    functionName: GenericAudioBufferRef::capacity
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn capacity(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioBufferRef::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:450,1
    - Dst: GenericAudioBufferRef::frames
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 451
      start: 449
    functionDepth: 1
    functionLinenumber: 449
    functionLinenumberEnd: 451
    functionName: GenericAudioBufferRef::samples_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - GenericAudioBufferRef::frames
    - GenericAudioBufferRef::num_planes
    linkageType: ''
    returnType: usize
    signature: pub fn samples_interleaved(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioBufferRef::frames
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 456
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 456
    functionName: GenericAudioBufferRef::samples_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - GenericAudioBufferRef::frames
    linkageType: ''
    returnType: usize
    signature: pub fn samples_planar(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: impl_generic_ref_func
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Dst'
    constantsTouched: []
    func_position:
      end: 465
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 465
    functionName: GenericAudioBufferRef::copy_to
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - impl_generic_ref_func
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to<Sout, Dst>(&self, dst: &mut Dst)whereSout: ConvertibleSample,Dst:
      AudioMut<Sout>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 476
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 476
    functionName: GenericAudioBufferRef::copy_to_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice_interleaved<Sout, Dst>(&self, dst: Dst)whereSout:
      ConvertibleSample,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 487
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 487
    functionName: GenericAudioBufferRef::copy_to_slice_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice_planar<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      ConvertibleSample,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Sout>'
    constantsTouched: []
    func_position:
      end: 497
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 497
    functionName: GenericAudioBufferRef::copy_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_vec_interleaved<Sout>(&self, dst: &mut Vec<Sout>)whereSout:
      ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<Sout>>'
    constantsTouched: []
    func_position:
      end: 507
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 507
    functionName: GenericAudioBufferRef::copy_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_vecs_planar<Sout>(&self, dst: &mut Vec<Vec<Sout>>)whereSout:
      ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 519
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 519
    functionName: GenericAudioBufferRef::copy_bytes_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_interleaved_as<Sout, Dst>(&self, dst: Dst)whereSout:
      SampleBytes + ConvertibleSample,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 531
      start: 525
    functionDepth: 0
    functionLinenumber: 525
    functionLinenumberEnd: 531
    functionName: GenericAudioBufferRef::copy_bytes_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_planar_as<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      SampleBytes + ConvertibleSample,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 541
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 541
    functionName: GenericAudioBufferRef::copy_bytes_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_interleaved<Dst>(&self, dst: Dst)whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 551
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 551
    functionName: GenericAudioBufferRef::copy_bytes_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_planar<Dst>(&self, dst: &mut [Dst])whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 558
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 558
    functionName: GenericAudioBufferRef::copy_bytes_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vec_interleaved(&self, dst: &mut Vec<u8>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 569
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 569
    functionName: GenericAudioBufferRef::copy_bytes_to_vec_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vec_interleaved_as<Sout>(&self, dst: &mut Vec<u8>)whereSout:
      SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 576
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionName: GenericAudioBufferRef::copy_bytes_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vecs_planar(&self, dst: &mut Vec<Vec<u8>>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 587
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 587
    functionName: GenericAudioBufferRef::copy_bytes_to_vecs_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vecs_planar_as<Sout>(&self, dst: &mut Vec<Vec<u8>>)whereSout:
      SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 595
      start: 590
    functionDepth: 0
    functionLinenumber: 590
    functionLinenumberEnd: 595
    functionName: GenericAudioBufferRef::byte_len_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_as<Sout>(&self) -> usizewhereSout: SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 604
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 604
    functionName: GenericAudioBufferRef::byte_len_per_plane_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_per_plane_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 613
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 613
    functionName: GenericAudioBufferRef::byte_len_per_frame_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_per_frame_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 618
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 618
    functionName: GenericAudioBufferRef::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 623
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 623
    functionName: GenericAudioBufferRef::byte_len_per_plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len_per_plane(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 628
      start: 626
    functionDepth: 0
    functionLinenumber: 626
    functionLinenumberEnd: 628
    functionName: GenericAudioBufferRef::byte_len_per_frame
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len_per_frame(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 641
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 641
    functionName: GenericAudioBuffer::as_generic_audio_buffer_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn as_generic_audio_buffer_ref(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 653
      start: 645
    functionDepth: 0
    functionLinenumber: 645
    functionLinenumberEnd: 653
    functionName: impl_as_generic_audio_buffer_ref
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:15,1
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:16,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:34,1
    - Dst: Err
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 708
      start: 668
    functionDepth: 0
    functionLinenumber: 668
    functionLinenumberEnd: 708
    functionName: impl_from_converions
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Err
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 763
      start: 748
    functionDepth: 0
    functionLinenumber: 748
    functionLinenumberEnd: 763
    functionName: impl_generic_slice_func
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 769
      start: 767
    functionDepth: 0
    functionLinenumber: 767
    functionLinenumberEnd: 769
    functionName: GenericAudioSlice::spec
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioSpec'
    signature: pub fn spec(&self) -> &AudioSpec
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 774
      start: 772
    functionDepth: 0
    functionLinenumber: 772
    functionLinenumberEnd: 774
    functionName: GenericAudioSlice::num_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn num_planes(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 779
      start: 777
    functionDepth: 0
    functionLinenumber: 777
    functionLinenumberEnd: 779
    functionName: GenericAudioSlice::is_empty
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: pub fn is_empty(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 784
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 784
    functionName: GenericAudioSlice::frames
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioSlice::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:788,1
    - Dst: GenericAudioSlice::frames
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 789
      start: 787
    functionDepth: 1
    functionLinenumber: 787
    functionLinenumberEnd: 789
    functionName: GenericAudioSlice::samples_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - GenericAudioSlice::num_planes
    - GenericAudioSlice::frames
    linkageType: ''
    returnType: usize
    signature: pub fn samples_interleaved(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: GenericAudioSlice::frames
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 794
      start: 792
    functionDepth: 1
    functionLinenumber: 792
    functionLinenumberEnd: 794
    functionName: GenericAudioSlice::samples_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - GenericAudioSlice::frames
    linkageType: ''
    returnType: usize
    signature: pub fn samples_planar(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: impl_generic_slice_func
      Src: /src/symphonia/symphonia-core/src/audio/generic.rs:802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Dst'
    constantsTouched: []
    func_position:
      end: 803
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 803
    functionName: GenericAudioSlice::copy_to
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached:
    - impl_generic_slice_func
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to<Sout, Dst>(&self, dst: &mut Dst)whereSout: ConvertibleSample,Dst:
      AudioMut<Sout>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 814
      start: 808
    functionDepth: 0
    functionLinenumber: 808
    functionLinenumberEnd: 814
    functionName: GenericAudioSlice::copy_to_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice_interleaved<Sout, Dst>(&self, dst: Dst)whereSout:
      ConvertibleSample,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 825
      start: 819
    functionDepth: 0
    functionLinenumber: 819
    functionLinenumberEnd: 825
    functionName: GenericAudioSlice::copy_to_slice_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice_planar<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      ConvertibleSample,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Sout>'
    constantsTouched: []
    func_position:
      end: 835
      start: 830
    functionDepth: 0
    functionLinenumber: 830
    functionLinenumberEnd: 835
    functionName: GenericAudioSlice::copy_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_vec_interleaved<Sout>(&self, dst: &mut Vec<Sout>)whereSout:
      ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<Sout>>'
    constantsTouched: []
    func_position:
      end: 845
      start: 840
    functionDepth: 0
    functionLinenumber: 840
    functionLinenumberEnd: 845
    functionName: GenericAudioSlice::copy_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_vecs_planar<Sout>(&self, dst: &mut Vec<Vec<Sout>>)whereSout:
      ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 857
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 857
    functionName: GenericAudioSlice::copy_bytes_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_interleaved_as<Sout, Dst>(&self, dst: Dst)whereSout:
      SampleBytes + ConvertibleSample,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 869
      start: 863
    functionDepth: 0
    functionLinenumber: 863
    functionLinenumberEnd: 869
    functionName: GenericAudioSlice::copy_bytes_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_planar_as<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      SampleBytes + ConvertibleSample,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 879
      start: 874
    functionDepth: 0
    functionLinenumber: 874
    functionLinenumberEnd: 879
    functionName: GenericAudioSlice::copy_bytes_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_interleaved<Dst>(&self, dst: Dst)whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 889
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 889
    functionName: GenericAudioSlice::copy_bytes_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_planar<Dst>(&self, dst: &mut [Dst])whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 896
      start: 894
    functionDepth: 0
    functionLinenumber: 894
    functionLinenumberEnd: 896
    functionName: GenericAudioSlice::copy_bytes_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vec_interleaved(&self, dst: &mut Vec<u8>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 907
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 907
    functionName: GenericAudioSlice::copy_bytes_to_vec_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vec_interleaved_as<Sout>(&self, dst: &mut Vec<u8>)whereSout:
      SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 914
      start: 912
    functionDepth: 0
    functionLinenumber: 912
    functionLinenumberEnd: 914
    functionName: GenericAudioSlice::copy_bytes_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vecs_planar(&self, dst: &mut Vec<Vec<u8>>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 925
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 925
    functionName: GenericAudioSlice::copy_bytes_to_vecs_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_to_vecs_planar_as<Sout>(&self, dst: &mut Vec<Vec<u8>>)whereSout:
      SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 933
      start: 928
    functionDepth: 0
    functionLinenumber: 928
    functionLinenumberEnd: 933
    functionName: GenericAudioSlice::byte_len_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_as<Sout>(&self) -> usizewhereSout: SampleBytes + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 942
      start: 937
    functionDepth: 0
    functionLinenumber: 937
    functionLinenumberEnd: 942
    functionName: GenericAudioSlice::byte_len_per_plane_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_per_plane_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 951
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 951
    functionName: GenericAudioSlice::byte_len_per_frame_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: 'pub fn byte_len_per_frame_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + ConvertibleSample,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 956
      start: 954
    functionDepth: 0
    functionLinenumber: 954
    functionLinenumberEnd: 956
    functionName: GenericAudioSlice::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 961
      start: 959
    functionDepth: 0
    functionLinenumber: 959
    functionLinenumberEnd: 961
    functionName: GenericAudioSlice::byte_len_per_plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len_per_plane(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 966
      start: 964
    functionDepth: 0
    functionLinenumber: 964
    functionLinenumberEnd: 966
    functionName: GenericAudioSlice::byte_len_per_frame
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/generic.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn byte_len_per_frame(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - spec
    - planes
    - range
    argTypes:
    - '&''a AudioSpec'
    - '&''a [Vec<S>]'
    - Range<usize>
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: AudioSlice::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub(super) fn new(spec: &''a AudioSpec, planes: &''a [Vec<S>], range:
      Range<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSlice::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:32,1
    - Dst: get_sub_range
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - range
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 11
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: AudioSlice::slice
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - get_sub_range
    - AudioSlice::new
    linkageType: ''
    returnType: AudioSlice
    signature: 'pub fn slice<R: RangeBounds<usize>>(&''a self, range: R) -> AudioSlice<''a,
      S>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: AudioSlice::spec
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioSpec'
    signature: fn spec(&self) -> &AudioSpec
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: AudioSlice::num_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 1
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: fn num_planes(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: AudioSlice::is_empty
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - is_empty
    linkageType: ''
    returnType: bool
    signature: fn is_empty(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: AudioSlice::frames
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 2
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:54,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:54,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - idx
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 9
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: AudioSlice::plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 1
    functionsReached:
    - get
    - map
    - clone
    linkageType: ''
    returnType: Option
    signature: 'fn plane(&self, idx: usize) -> Option<&[S]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: plane_pair_by_buffer_index
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:58,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - idx0
    - idx1
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: AudioSlice::plane_pair
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - plane_pair_by_buffer_index
    - clone
    linkageType: ''
    returnType: Option
    signature: 'fn plane_pair(&self, idx0: usize, idx1: usize) -> Option<(&[S], &[S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioPlanes::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:62,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: AudioSlice::iter_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - AudioPlanes::new
    - clone
    linkageType: ''
    returnType: AudioPlanes
    signature: fn iter_planes(&self) -> AudioPlanes<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Interleaved::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:66,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: AudioSlice::iter_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - Interleaved::new
    - clone
    linkageType: ''
    returnType: Interleaved
    signature: fn iter_interleaved(&self) -> Interleaved<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_to_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:75,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 12
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: AudioSlice::copy_to_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_to_slice_interleaved
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_to_slice_interleaved<Sout, Dst>(&self, dst: Dst)whereSout:
      Sample + FromSample<S>,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_interleaved::<Sout, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:86,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: AudioSlice::copy_bytes_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_interleaved::<Sout, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_interleaved_as<Sout, Dst>(&self, dst: Dst)whereSout:
      SampleBytes + FromSample<S>,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_planar::<Sout, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:95,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 96
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 96
    functionName: AudioSlice::copy_bytes_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_planar::<Sout, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_planar_as<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      SampleBytes + FromSample<S>,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_interleaved::<S, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:103,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionName: AudioSlice::copy_bytes_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_interleaved::<S, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_interleaved<Dst>(&self, dst: Dst)whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_planar::<S, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:111,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: AudioSlice::copy_bytes_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_planar::<S, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_planar<Dst>(&self, dst: &mut [Dst])whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSlice::plane
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:127,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 10
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: AudioSlice::index
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - AudioSlice::plane
    - Option::expect
    linkageType: ''
    returnType: '&Self::Output'
    signature: 'fn index(&self, index: usize) -> &Self::Output'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - spec
    - planes
    - range
    argTypes:
    - '&''a AudioSpec'
    - '&''a mut [Vec<S>]'
    - Range<usize>
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: AudioSliceMut::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub(super) fn new(spec: &''a AudioSpec, planes: &''a mut [Vec<S>],
      range: Range<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSlice::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:145,1
    - Dst: get_sub_range
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - range
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 11
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: AudioSliceMut::slice
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - get_sub_range
    - AudioSlice::new
    linkageType: ''
    returnType: AudioSlice
    signature: 'pub fn slice<R: RangeBounds<usize>>(&''a self, range: R) -> AudioSlice<''a,
      S>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSliceMut::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:150,1
    - Dst: get_sub_range
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - range
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 11
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: AudioSliceMut::slice_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - get_sub_range
    - AudioSliceMut::new
    linkageType: ''
    returnType: AudioSliceMut
    signature: 'pub fn slice_mut<R: RangeBounds<usize>>(&''a mut self, range: R) ->
      AudioSliceMut<''a, S>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: AudioSliceMut::spec
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioSpec'
    signature: fn spec(&self) -> &AudioSpec
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: AudioSliceMut::num_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: fn num_planes(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-core/src/audio/slice.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: AudioSliceMut::is_empty
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - is_empty
    linkageType: ''
    returnType: bool
    signature: fn is_empty(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: AudioSliceMut::frames
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:172,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:172,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - idx
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 9
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: AudioSliceMut::plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 1
    functionsReached:
    - get
    - map
    - clone
    linkageType: ''
    returnType: Option
    signature: 'fn plane(&self, idx: usize) -> Option<&[S]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: plane_pair_by_buffer_index
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:176,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - idx0
    - idx1
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: AudioSliceMut::plane_pair
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - plane_pair_by_buffer_index
    - clone
    linkageType: ''
    returnType: Option
    signature: 'fn plane_pair(&self, idx0: usize, idx1: usize) -> Option<(&[S], &[S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioPlanes::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:180,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: AudioSliceMut::iter_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - AudioPlanes::new
    - clone
    linkageType: ''
    returnType: AudioPlanes
    signature: fn iter_planes(&self) -> AudioPlanes<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Interleaved::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:184,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 2
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: AudioSliceMut::iter_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - Interleaved::new
    - clone
    linkageType: ''
    returnType: Interleaved
    signature: fn iter_interleaved(&self) -> Interleaved<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_to_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:193,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 194
      start: 187
    functionDepth: 12
    functionLinenumber: 187
    functionLinenumberEnd: 194
    functionName: AudioSliceMut::copy_to_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_to_slice_interleaved
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_to_slice_interleaved<Sout, Dst>(&self, dst: Dst)whereSout:
      Sample + FromSample<S>,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_mut
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:199,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:199,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - idx
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 9
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: AudioSliceMut::plane_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 1
    functionsReached:
    - get_mut
    - map
    - clone
    linkageType: ''
    returnType: Option
    signature: 'fn plane_mut(&mut self, idx: usize) -> Option<&mut [S]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: plane_pair_by_buffer_index_mut
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:203,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - idx0
    - idx1
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: AudioSliceMut::plane_pair_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - clone
    - plane_pair_by_buffer_index_mut
    linkageType: ''
    returnType: Option
    signature: 'fn plane_pair_mut(&mut self, idx0: usize, idx1: usize) -> Option<(&mut
      [S], &mut [S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioPlanesMut::new
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:207,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 208
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionName: AudioSliceMut::iter_planes_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - AudioPlanesMut::new
    - clone
    linkageType: ''
    returnType: AudioPlanesMut
    signature: fn iter_planes_mut(&mut self) -> AudioPlanesMut<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_from_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:217,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - src
    argTypes:
    - '&Src'
    constantsTouched: []
    func_position:
      end: 218
      start: 210
    functionDepth: 3
    functionLinenumber: 210
    functionLinenumberEnd: 218
    functionName: AudioSliceMut::copy_from_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_from_slice_interleaved
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_from_slice_interleaved<Sin, Src>(&mut self, src: &Src)whereSin:
      Sample,S: Sample + FromSample<Sin>,Src: AsRef<[Sin]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_interleaved::<Sout, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:228,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 229
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 229
    functionName: AudioSliceMut::copy_bytes_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_interleaved::<Sout, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_interleaved_as<Sout, Dst>(&self, dst: Dst)whereSout:
      SampleBytes + FromSample<S>,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_planar::<Sout, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:237,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 238
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 238
    functionName: AudioSliceMut::copy_bytes_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_planar::<Sout, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_planar_as<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      SampleBytes + FromSample<S>,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_interleaved::<S, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:245,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 246
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 246
    functionName: AudioSliceMut::copy_bytes_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_interleaved::<S, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_interleaved<Dst>(&self, dst: Dst)whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_planar::<S, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:253,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 254
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 254
    functionName: AudioSliceMut::copy_bytes_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_planar::<S, _, _, _, _>
    - clone
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_planar<Dst>(&self, dst: &mut [Dst])whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSliceMut::plane
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:275,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 276
      start: 274
    functionDepth: 10
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionName: AudioSliceMut::index
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - Option::expect
    - AudioSliceMut::plane
    linkageType: ''
    returnType: '&Self::Output'
    signature: 'fn index(&self, index: usize) -> &Self::Output'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSliceMut::plane_mut
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:281,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/audio/slice.rs:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 282
      start: 280
    functionDepth: 10
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionName: AudioSliceMut::index_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/slice.rs
    functionUses: 0
    functionsReached:
    - Option::expect
    - AudioSliceMut::plane_mut
    linkageType: ''
    returnType: '&mut Self::Output'
    signature: 'fn index_mut(&mut self, index: usize) -> &mut Self::Output'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - rate
    - channels
    argTypes:
    - u32
    - Channels
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: AudioSpec::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(rate: u32, channels: Channels) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: AudioSpec::rate
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: pub fn rate(&self) -> u32
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: AudioSpec::channels
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: '&Channels'
    signature: pub fn channels(&self) -> &Channels
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - planes
    - bound
    argTypes:
    - '&''a [Vec<S>]'
    - Range<usize>
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: AudioPlanes::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'fn new(planes: &''a [Vec<S>], bound: Range<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: split_first
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:90,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:93,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 97
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 97
    functionName: AudioPlanes::next
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - split_first
    - Some
    - clone
    linkageType: ''
    returnType: Option
    signature: fn next(&mut self) -> Option<Self::Item>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - planes
    - bound
    argTypes:
    - '&''a mut [Vec<S>]'
    - Range<usize>
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: AudioPlanesMut::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'fn new(planes: &''a mut [Vec<S>], bound: Range<usize>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::take
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:116,1
    - Dst: split_first_mut
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:116,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:119,1
    - Dst: clone
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 123
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 123
    functionName: AudioPlanesMut::next
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - split_first_mut
    - Some
    - std::mem::take
    - clone
    linkageType: ''
    returnType: Option
    signature: fn next(&mut self) -> Option<Self::Item>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::len
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:136,1
    - Dst: Range<usize>::len
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - planes
    - bound
    argTypes:
    - '&[Vec<S>]'
    - Range<usize>
    constantsTouched: []
    func_position:
      end: 143
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 143
    functionName: Interleaved::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 3
    functionsReached:
    - usize::len
    - Range<usize>::len
    linkageType: ''
    returnType: Interleaved
    signature: 'fn new(planes: &[Vec<S>], bound: Range<usize>) -> Interleaved<''_,
      S>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 159
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 159
    functionName: Interleaved::next
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: fn next(&mut self) -> Option<Self::Item>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Audio::spec
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:185,1
    - Dst: AudioSpec::channels
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:185,1
    - Dst: '&Channels::get_canonical_index_for_positioned_channel'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:185,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:185,1
    - Dst: Audio::plane
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - pos
    argTypes:
    - Position
    constantsTouched: []
    func_position:
      end: 189
      start: 184
    functionDepth: 12
    functionLinenumber: 184
    functionLinenumberEnd: 189
    functionName: Audio::plane_by_position
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - Audio::spec
    - AudioSpec::channels
    - '&Channels::get_canonical_index_for_positioned_channel'
    - Option::and_then
    - Audio::plane
    linkageType: ''
    returnType: Option
    signature: 'fn plane_by_position(&self, pos: Position) -> Option<&[S]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Audio::spec
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:208,1
    - Dst: AudioSpec::channels
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:208,1
    - Dst: Option::get_canonical_index_for_positioned_channel
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:210,1
    - Dst: Option::get_canonical_index_for_positioned_channel
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:211,1
    - Dst: Audio::plane_pair
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - pos0
    - pos1
    argTypes:
    - Position
    - Position
    constantsTouched: []
    func_position:
      end: 214
      start: 204
    functionDepth: 12
    functionLinenumber: 204
    functionLinenumberEnd: 214
    functionName: Audio::plane_pair_by_position
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - Audio::plane_pair
    - Audio::spec
    - AudioSpec::channels
    - Option::get_canonical_index_for_positioned_channel
    linkageType: ''
    returnType: Option
    signature: 'fn plane_pair_by_position(&self, pos0: Position, pos1: Position) ->
      Option<(&[S], &[S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Audio::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:224,1
    - Dst: Audio::frames
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: Audio::samples_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 1
    functionsReached:
    - Audio::frames
    - Audio::num_planes
    linkageType: ''
    returnType: usize
    signature: fn samples_interleaved(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Audio::frames
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: Audio::samples_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 1
    functionsReached:
    - Audio::frames
    linkageType: ''
    returnType: usize
    signature: fn samples_planar(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Audio::iter_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:266,1
    - Dst: AudioPlanes::zip
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:266,1
    - Dst: copy_to_slice
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:268,1
    - Dst: '&mut [Dst]::as_mut'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 270
      start: 255
    functionDepth: 3
    functionLinenumber: 255
    functionLinenumberEnd: 270
    functionName: Audio::copy_to_slice_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 1
    functionsReached:
    - AudioPlanes::zip
    - '&mut [Dst]::as_mut'
    - copy_to_slice
    - Audio::iter_planes
    linkageType: ''
    returnType: void
    signature: 'fn copy_to_slice_planar<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      Sample + FromSample<S>,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut Vec<Sout>::resize'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:289,1
    - Dst: Audio::samples_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:289,1
    - Dst: Audio::copy_to_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Sout>'
    constantsTouched: []
    func_position:
      end: 291
      start: 284
    functionDepth: 3
    functionLinenumber: 284
    functionLinenumberEnd: 291
    functionName: Audio::copy_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - Audio::copy_to_slice_interleaved
    - Audio::samples_interleaved
    - '&mut Vec<Sout>::resize'
    linkageType: ''
    returnType: void
    signature: 'fn copy_to_vec_interleaved<Sout>(&self, dst: &mut Vec<Sout>)whereSout:
      Sample + FromSample<S>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut Vec<Vec<Sout>>::resize'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:312,1
    - Dst: Audio::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:312,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:312,1
    - Dst: '&mut Vec<Vec<Sout>>::iter_mut'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:315,1
    - Dst: resize
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:316,1
    - Dst: Audio::samples_planar
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:316,1
    - Dst: Audio::copy_to_slice_planar
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:319,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<Sout>>'
    constantsTouched: []
    func_position:
      end: 320
      start: 307
    functionDepth: 15
    functionLinenumber: 307
    functionLinenumberEnd: 320
    functionName: Audio::copy_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - Audio::samples_planar
    - Audio::copy_to_slice_planar
    - '&mut Vec<Vec<Sout>>::iter_mut'
    - '&mut Vec<Vec<Sout>>::resize'
    - Audio::num_planes
    - Default::default
    - resize
    linkageType: ''
    returnType: void
    signature: 'fn copy_to_vecs_planar<Sout>(&self, dst: &mut Vec<Vec<Sout>>)whereSout:
      Sample + FromSample<S>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioMut::spec
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:334,1
    - Dst: AudioSpec::channels
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:334,1
    - Dst: '&Channels::get_canonical_index_for_positioned_channel'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:334,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:334,1
    - Dst: AudioMut::plane_mut
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - pos
    argTypes:
    - Position
    constantsTouched: []
    func_position:
      end: 338
      start: 333
    functionDepth: 12
    functionLinenumber: 333
    functionLinenumberEnd: 338
    functionName: AudioMut::plane_by_position_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioSpec::channels
    - '&Channels::get_canonical_index_for_positioned_channel'
    - Option::and_then
    - AudioMut::spec
    - AudioMut::plane_mut
    linkageType: ''
    returnType: Option
    signature: 'fn plane_by_position_mut(&mut self, pos: Position) -> Option<&mut
      [S]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioMut::spec
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:361,1
    - Dst: AudioSpec::channels
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:361,1
    - Dst: Option::get_canonical_index_for_positioned_channel
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:363,1
    - Dst: Option::get_canonical_index_for_positioned_channel
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:364,1
    - Dst: AudioMut::plane_pair_mut
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - pos0
    - pos1
    argTypes:
    - Position
    - Position
    constantsTouched: []
    func_position:
      end: 367
      start: 353
    functionDepth: 12
    functionLinenumber: 353
    functionLinenumberEnd: 367
    functionName: AudioMut::plane_pair_by_position_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioMut::spec
    - AudioMut::plane_pair_mut
    - AudioSpec::channels
    - Option::get_canonical_index_for_positioned_channel
    linkageType: ''
    returnType: Option
    signature: 'fn plane_pair_by_position_mut(&mut self,pos0: Position,pos1: Position,)
      -> Option<(&mut [S], &mut [S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioMut::iter_planes_mut
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:379,1
    - Dst: f
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    constantsTouched: []
    func_position:
      end: 384
      start: 375
    functionDepth: 3
    functionLinenumber: 375
    functionLinenumberEnd: 384
    functionName: AudioMut::apply
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioMut::iter_planes_mut
    - f
    linkageType: ''
    returnType: void
    signature: 'fn apply<F>(&mut self, f: F)whereF: Fn(S) -> S,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&Src::iter_planes'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:402,1
    - Dst: AudioPlanes::zip
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:402,1
    - Dst: AudioMut::iter_planes_mut
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:402,1
    - Dst: copy_to_slice
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - src
    argTypes:
    - '&Src'
    constantsTouched: []
    func_position:
      end: 406
      start: 393
    functionDepth: 3
    functionLinenumber: 393
    functionLinenumberEnd: 406
    functionName: AudioMut::copy_from
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioPlanes::zip
    - '&Src::iter_planes'
    - AudioMut::iter_planes_mut
    - copy_to_slice
    linkageType: ''
    returnType: void
    signature: 'fn copy_from<Sin, Src>(&mut self, src: &Src)whereSin: Sample,S: Sample
      + FromSample<Sin>,Src: Audio<Sin>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&[Src]::iter'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:423,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:423,1
    - Dst: AudioMut::iter_planes_mut
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:423,1
    - Dst: copy_to_slice
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:425,1
    - Dst: '&[Src]::as_ref'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:425,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - src
    argTypes:
    - '&[Src]'
    constantsTouched: []
    func_position:
      end: 427
      start: 415
    functionDepth: 11
    functionLinenumber: 415
    functionLinenumberEnd: 427
    functionName: AudioMut::copy_from_slice_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - zip
    - '&[Src]::as_ref'
    - copy_to_slice
    - AudioMut::iter_planes_mut
    - '&[Src]::iter'
    linkageType: ''
    returnType: void
    signature: 'fn copy_from_slice_planar<Sin, Src>(&mut self, src: &[Src])whereSin:
      Sample,S: Sample + FromSample<Sin>,Src: AsRef<[Sin]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<Sout::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:444,1
    - Dst: AudioBytes::samples_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 445
      start: 440
    functionDepth: 2
    functionLinenumber: 440
    functionLinenumberEnd: 445
    functionName: AudioBytes::byte_len_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBytes::samples_interleaved
    - std::mem::size_of::<Sout::RawType>
    linkageType: ''
    returnType: usize
    signature: 'fn byte_len_as<Sout>(&self) -> usizewhereSout: SampleBytes + FromSample<S>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<Sout::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:453,1
    - Dst: AudioBytes::samples_planar
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 454
      start: 449
    functionDepth: 2
    functionLinenumber: 449
    functionLinenumberEnd: 454
    functionName: AudioBytes::byte_len_per_plane_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBytes::samples_planar
    - std::mem::size_of::<Sout::RawType>
    linkageType: ''
    returnType: usize
    signature: 'fn byte_len_per_plane_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + FromSample<S>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<Sout::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:462,1
    - Dst: AudioBytes::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 463
      start: 458
    functionDepth: 1
    functionLinenumber: 458
    functionLinenumberEnd: 463
    functionName: AudioBytes::byte_len_per_frame_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBytes::num_planes
    - std::mem::size_of::<Sout::RawType>
    linkageType: ''
    returnType: usize
    signature: 'fn byte_len_per_frame_as<Sout>(&self) -> usizewhereSout: SampleBytes
      + FromSample<S>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<S::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:499,1
    - Dst: AudioBytes::samples_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 500
      start: 498
    functionDepth: 2
    functionLinenumber: 498
    functionLinenumberEnd: 500
    functionName: AudioBytes::byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 1
    functionsReached:
    - AudioBytes::samples_interleaved
    - std::mem::size_of::<S::RawType>
    linkageType: ''
    returnType: usize
    signature: fn byte_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<S::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:504,1
    - Dst: AudioBytes::samples_planar
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 505
      start: 503
    functionDepth: 2
    functionLinenumber: 503
    functionLinenumberEnd: 505
    functionName: AudioBytes::byte_len_per_plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 1
    functionsReached:
    - AudioBytes::samples_planar
    - std::mem::size_of::<S::RawType>
    linkageType: ''
    returnType: usize
    signature: fn byte_len_per_plane(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<S::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:509,1
    - Dst: AudioBytes::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:509,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 510
      start: 508
    functionDepth: 1
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionName: AudioBytes::byte_len_per_frame
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBytes::num_planes
    - std::mem::size_of::<S::RawType>
    linkageType: ''
    returnType: usize
    signature: fn byte_len_per_frame(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut Vec<u8>::resize'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:551,1
    - Dst: AudioBytes::byte_len
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:551,1
    - Dst: AudioBytes::copy_bytes_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:552,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 553
      start: 549
    functionDepth: 3
    functionLinenumber: 549
    functionLinenumberEnd: 553
    functionName: AudioBytes::copy_bytes_to_vec_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBytes::copy_bytes_interleaved
    - '&mut Vec<u8>::resize'
    - AudioBytes::byte_len
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_to_vec_interleaved(&self, dst: &mut Vec<u8>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut Vec<u8>::resize'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:570,1
    - Dst: byte_len_as::<Sout>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:570,1
    - Dst: copy_bytes_interleaved_as::<Sout, _>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<u8>'
    constantsTouched: []
    func_position:
      end: 572
      start: 565
    functionDepth: 2
    functionLinenumber: 565
    functionLinenumberEnd: 572
    functionName: AudioBytes::copy_bytes_to_vec_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - byte_len_as::<Sout>
    - copy_bytes_interleaved_as::<Sout, _>
    - '&mut Vec<u8>::resize'
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_to_vec_interleaved_as<Sout>(&self, dst: &mut Vec<u8>)whereSout:
      SampleBytes + FromSample<S>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut Vec<Vec<u8>>::resize'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:587,1
    - Dst: AudioBytes::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:587,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:587,1
    - Dst: '&mut Vec<Vec<u8>>::iter_mut'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:590,1
    - Dst: resize
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:591,1
    - Dst: AudioBytes::byte_len_per_plane
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:591,1
    - Dst: AudioBytes::copy_bytes_planar
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:594,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 595
      start: 585
    functionDepth: 15
    functionLinenumber: 585
    functionLinenumberEnd: 595
    functionName: AudioBytes::copy_bytes_to_vecs_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBytes::num_planes
    - AudioBytes::copy_bytes_planar
    - AudioBytes::byte_len_per_plane
    - '&mut Vec<Vec<u8>>::resize'
    - '&mut Vec<Vec<u8>>::iter_mut'
    - Default::default
    - resize
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_to_vecs_planar(&self, dst: &mut Vec<Vec<u8>>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut Vec<Vec<u8>>::resize'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:614,1
    - Dst: AudioBytes::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:614,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:614,1
    - Dst: '&mut Vec<Vec<u8>>::iter_mut'
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:617,1
    - Dst: resize
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:618,1
    - Dst: byte_len_per_plane_as::<Sout>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:618,1
    - Dst: copy_bytes_planar_as::<Sout, _>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut Vec<Vec<u8>>'
    constantsTouched: []
    func_position:
      end: 622
      start: 609
    functionDepth: 15
    functionLinenumber: 609
    functionLinenumberEnd: 622
    functionName: AudioBytes::copy_bytes_to_vecs_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBytes::num_planes
    - copy_bytes_planar_as::<Sout, _>
    - '&mut Vec<Vec<u8>>::resize'
    - byte_len_per_plane_as::<Sout>
    - '&mut Vec<Vec<u8>>::iter_mut'
    - Default::default
    - resize
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_to_vecs_planar_as<Sout>(&self, dst: &mut Vec<Vec<u8>>)whereSout:
      SampleBytes + FromSample<S>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: max_byte_len_per_plane_as::<Sout>
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:633,1
    - Dst: AudioBufferBytes::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 634
      start: 629
    functionDepth: 1
    functionLinenumber: 629
    functionLinenumberEnd: 634
    functionName: AudioBufferBytes::max_byte_len_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - max_byte_len_per_plane_as::<Sout>
    - AudioBufferBytes::num_planes
    linkageType: ''
    returnType: usize
    signature: 'fn max_byte_len_as<Sout>(&self) -> usizewhereSout: SampleBytes,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBufferBytes::max_byte_len_per_plane
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:644,1
    - Dst: AudioBufferBytes::num_planes
      Src: /src/symphonia/symphonia-core/src/audio/mod.rs:644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 645
      start: 643
    functionDepth: 2
    functionLinenumber: 643
    functionLinenumberEnd: 645
    functionName: AudioBufferBytes::max_byte_len
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/mod.rs
    functionUses: 0
    functionsReached:
    - AudioBufferBytes::num_planes
    - AudioBufferBytes::max_byte_len_per_plane
    linkageType: ''
    returnType: usize
    signature: fn max_byte_len(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSpec::channels
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:79,1
    - Dst: '&Channels::count'
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:79,1
    - Dst: SmallVec::<[Vec<S>; 3]>::with_capacity
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:89,1
    - Dst: usize::resize_with
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - spec
    - capacity
    argTypes:
    - AudioSpec
    - usize
    constantsTouched: []
    func_position:
      end: 94
      start: 78
    functionDepth: 10
    functionLinenumber: 78
    functionLinenumberEnd: 94
    functionName: AudioBuffer::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 9
    functionsReached:
    - '&Channels::count'
    - usize::resize_with
    - SmallVec::<[Vec<S>; 3]>::with_capacity
    - AudioSpec::channels
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(spec: AudioSpec, capacity: usize) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: count
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 10
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: AudioBuffer::is_unused
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - count
    linkageType: ''
    returnType: bool
    signature: pub fn is_unused(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: AudioBuffer::capacity
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: pub fn capacity(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: AudioBuffer::clear
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: pub fn clear(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::resize
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - new_capacity
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: AudioBuffer::grow_capacity
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - usize::resize
    linkageType: ''
    returnType: void
    signature: 'pub fn grow_capacity(&mut self, new_capacity: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSlice::new
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:132,1
    - Dst: get_sub_range
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - range
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 11
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: AudioBuffer::slice
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - get_sub_range
    - AudioSlice::new
    linkageType: ''
    returnType: AudioSlice
    signature: 'pub fn slice<R: RangeBounds<usize>>(&self, range: R) -> AudioSlice<''_,
      S>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioSliceMut::new
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:139,1
    - Dst: get_sub_range
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - range
    argTypes:
    - R
    constantsTouched: []
    func_position:
      end: 140
      start: 136
    functionDepth: 11
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionName: AudioBuffer::slice_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - get_sub_range
    - AudioSliceMut::new
    linkageType: ''
    returnType: AudioSliceMut
    signature: 'pub fn slice_mut<R: RangeBounds<usize>>(&mut self, range: R) -> AudioSliceMut<''_,
      S>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&Src::frames'
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:159,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:164,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:164,1
    - Dst: '&Src::iter_planes'
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:164,1
    - Dst: copy_to_slice
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 1
    argNames:
    - src
    argTypes:
    - '&Src'
    constantsTouched: []
    func_position:
      end: 171
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 171
    functionName: AudioBuffer::append
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - '&Src::iter_planes'
    - zip
    - copy_to_slice
    - iter_mut
    - '&Src::frames'
    linkageType: ''
    returnType: void
    signature: 'pub fn append<Sin, Src>(&mut self, src: &Src)whereSin: Sample,S: Sample
      + FromSample<Sin>,Src: Audio<Sin>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBuffer::truncate
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:192,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:196,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 2
    argNames:
    - new_len
    - frame
    argTypes:
    - usize
    - '&[S]'
    constantsTouched: []
    func_position:
      end: 204
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 204
    functionName: AudioBuffer::resize
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - zip
    - AudioBuffer::truncate
    - iter_mut
    linkageType: ''
    returnType: void
    signature: 'pub fn resize(&mut self, new_len: usize, frame: &[S])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBuffer::truncate
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:221,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - new_len
    - sample
    argTypes:
    - usize
    - S
    constantsTouched: []
    func_position:
      end: 233
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 233
    functionName: AudioBuffer::resize_with_sample
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 1
    functionsReached:
    - AudioBuffer::truncate
    linkageType: ''
    returnType: void
    signature: 'pub fn resize_with_sample(&mut self, new_len: usize, sample: S)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBuffer::resize_with_sample
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - new_len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: AudioBuffer::resize_with_silence
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - AudioBuffer::resize_with_sample
    linkageType: ''
    returnType: void
    signature: 'pub fn resize_with_silence(&mut self, new_len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - new_len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: AudioBuffer::resize_uninit
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn resize_uninit(&mut self, new_len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::unwrap_or
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:275,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:284,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:284,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - num_frames
    - frame
    argTypes:
    - Option<usize>
    - '&[S]'
    constantsTouched: []
    func_position:
      end: 294
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 294
    functionName: AudioBuffer::render
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - u16::unwrap_or
    - zip
    - iter_mut
    linkageType: ''
    returnType: usize
    signature: 'pub fn render(&mut self, num_frames: Option<usize>, frame: &[S]) ->
      usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::unwrap_or
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:323,1
    - Dst: MutableAudioPlaneSlices::new
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:333,1
    - Dst: f
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:339,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 2
    argNames:
    - num_frames
    - f
    argTypes:
    - Option<usize>
    - F
    constantsTouched: []
    func_position:
      end: 346
      start: 318
    functionDepth: 16
    functionLinenumber: 318
    functionLinenumberEnd: 346
    functionName: AudioBuffer::render_with
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - u16::unwrap_or
    - Ok
    - MutableAudioPlaneSlices::new
    - f
    linkageType: ''
    returnType: Result
    signature: 'pub fn render_with<F>(&mut self, num_frames: Option<usize>, mut f:
      F) -> Result<usize>whereF: FnMut(usize, &mut [&mut [S]]) -> Result<()>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::unwrap_or
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:359,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - num_frames
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 375
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 375
    functionName: AudioBuffer::render_silence
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - u16::unwrap_or
    linkageType: ''
    returnType: usize
    signature: 'pub fn render_silence(&mut self, num_frames: Option<usize>) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u16::unwrap_or
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - num_frames
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 400
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 400
    functionName: AudioBuffer::render_uninit
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - u16::unwrap_or
    linkageType: ''
    returnType: usize
    signature: 'pub fn render_uninit(&mut self, num_frames: Option<usize>) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBuffer::clear
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:406,1
    - Dst: usize::copy_within
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:411,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - shift
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 415
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 415
    functionName: AudioBuffer::shift
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 1
    functionsReached:
    - usize::copy_within
    - AudioBuffer::clear
    linkageType: ''
    returnType: void
    signature: 'pub fn shift(&mut self, shift: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - num_frames
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 423
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 423
    functionName: AudioBuffer::truncate
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn truncate(&mut self, num_frames: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBuffer::truncate
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:429,1
    - Dst: AudioBuffer::frames
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:429,1
    - Dst: usize::saturating_sub
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:429,1
    - Dst: AudioBuffer::shift
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - start
    - end
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 433
      start: 426
    functionDepth: 2
    functionLinenumber: 426
    functionLinenumberEnd: 433
    functionName: AudioBuffer::trim
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - AudioBuffer::truncate
    - AudioBuffer::shift
    - AudioBuffer::frames
    - usize::saturating_sub
    linkageType: ''
    returnType: void
    signature: 'pub fn trim(&mut self, start: usize, end: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 439
      start: 437
    functionDepth: 0
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionName: AudioBuffer::spec
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioSpec'
    signature: fn spec(&self) -> &AudioSpec
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 443
      start: 441
    functionDepth: 1
    functionLinenumber: 441
    functionLinenumberEnd: 443
    functionName: AudioBuffer::num_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 1
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: fn num_planes(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 447
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 447
    functionName: AudioBuffer::is_empty
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_empty(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 451
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 451
    functionName: AudioBuffer::frames
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: fn frames(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:454,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - idx
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 455
      start: 453
    functionDepth: 9
    functionLinenumber: 453
    functionLinenumberEnd: 455
    functionName: AudioBuffer::plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 1
    functionsReached:
    - get
    - map
    linkageType: ''
    returnType: Option
    signature: 'fn plane(&self, idx: usize) -> Option<&[S]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: plane_pair_by_buffer_index
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - idx0
    - idx1
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 459
      start: 457
    functionDepth: 2
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionName: AudioBuffer::plane_pair
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - plane_pair_by_buffer_index
    linkageType: ''
    returnType: Option
    signature: 'fn plane_pair(&self, idx0: usize, idx1: usize) -> Option<(&[S], &[S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioPlanes::new
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 463
      start: 461
    functionDepth: 1
    functionLinenumber: 461
    functionLinenumberEnd: 463
    functionName: AudioBuffer::iter_planes
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - AudioPlanes::new
    linkageType: ''
    returnType: AudioPlanes
    signature: fn iter_planes(&self) -> AudioPlanes<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Interleaved::new
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 467
      start: 465
    functionDepth: 2
    functionLinenumber: 465
    functionLinenumberEnd: 467
    functionName: AudioBuffer::iter_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - Interleaved::new
    linkageType: ''
    returnType: Interleaved
    signature: fn iter_interleaved(&self) -> Interleaved<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_to_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 476
      start: 469
    functionDepth: 12
    functionLinenumber: 469
    functionLinenumberEnd: 476
    functionName: AudioBuffer::copy_to_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - copy_to_slice_interleaved
    linkageType: ''
    returnType: void
    signature: 'fn copy_to_slice_interleaved<Sout, Dst>(&self, dst: Dst)whereSout:
      Sample + FromSample<S>,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_mut
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:481,1
    - Dst: map
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - idx
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 482
      start: 480
    functionDepth: 9
    functionLinenumber: 480
    functionLinenumberEnd: 482
    functionName: AudioBuffer::plane_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 1
    functionsReached:
    - get_mut
    - map
    linkageType: ''
    returnType: Option
    signature: 'fn plane_mut(&mut self, idx: usize) -> Option<&mut [S]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: plane_pair_by_buffer_index_mut
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - idx0
    - idx1
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 486
      start: 484
    functionDepth: 2
    functionLinenumber: 484
    functionLinenumberEnd: 486
    functionName: AudioBuffer::plane_pair_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - plane_pair_by_buffer_index_mut
    linkageType: ''
    returnType: Option
    signature: 'fn plane_pair_mut(&mut self, idx0: usize, idx1: usize) -> Option<(&mut
      [S], &mut [S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioPlanesMut::new
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 490
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 490
    functionName: AudioBuffer::iter_planes_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - AudioPlanesMut::new
    linkageType: ''
    returnType: AudioPlanesMut
    signature: fn iter_planes_mut(&mut self) -> AudioPlanesMut<'_, S>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_from_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - src
    argTypes:
    - '&Src'
    constantsTouched: []
    func_position:
      end: 500
      start: 492
    functionDepth: 3
    functionLinenumber: 492
    functionLinenumberEnd: 500
    functionName: AudioBuffer::copy_from_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - copy_from_slice_interleaved
    linkageType: ''
    returnType: void
    signature: 'fn copy_from_slice_interleaved<Sin, Src>(&mut self, src: &Src)whereSin:
      Sample,S: Sample + FromSample<Sin>,Src: AsRef<[Sin]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_interleaved::<Sout, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 511
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 511
    functionName: AudioBuffer::copy_bytes_interleaved_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_interleaved::<Sout, _, _, _, _>
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_interleaved_as<Sout, Dst>(&self, dst: Dst)whereSout:
      SampleBytes + FromSample<S>,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_planar::<Sout, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:519,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 520
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 520
    functionName: AudioBuffer::copy_bytes_planar_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_planar::<Sout, _, _, _, _>
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_planar_as<Sout, Dst>(&self, dst: &mut [Dst])whereSout:
      SampleBytes + FromSample<S>,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_interleaved::<S, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - Dst
    constantsTouched: []
    func_position:
      end: 528
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 528
    functionName: AudioBuffer::copy_bytes_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_interleaved::<S, _, _, _, _>
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_interleaved<Dst>(&self, dst: Dst)whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_bytes_planar::<S, _, _, _, _>
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dst
    argTypes:
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 536
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 536
    functionName: AudioBuffer::copy_bytes_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - copy_bytes_planar::<S, _, _, _, _>
    linkageType: ''
    returnType: void
    signature: 'fn copy_bytes_planar<Dst>(&self, dst: &mut [Dst])whereDst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<Sout::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:544,1
    - Dst: AudioBuffer::capacity
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 545
      start: 540
    functionDepth: 1
    functionLinenumber: 540
    functionLinenumberEnd: 545
    functionName: AudioBuffer::max_byte_len_per_plane_as
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - std::mem::size_of::<Sout::RawType>
    - AudioBuffer::capacity
    linkageType: ''
    returnType: usize
    signature: 'fn max_byte_len_per_plane_as<Sout>(&self) -> usizewhereSout: SampleBytes,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::mem::size_of::<S::RawType>
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:548,1
    - Dst: AudioBuffer::capacity
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 549
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 549
    functionName: AudioBuffer::max_byte_len_per_plane
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - std::mem::size_of::<S::RawType>
    - AudioBuffer::capacity
    linkageType: ''
    returnType: usize
    signature: fn max_byte_len_per_plane(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBuffer::plane
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:570,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 571
      start: 569
    functionDepth: 10
    functionLinenumber: 569
    functionLinenumberEnd: 571
    functionName: AudioBuffer::index
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - Option::expect
    - AudioBuffer::plane
    linkageType: ''
    returnType: '&Self::Output'
    signature: 'fn index(&self, index: usize) -> &Self::Output'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioBuffer::plane_mut
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:576,1
    - Dst: Option::expect
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 577
      start: 575
    functionDepth: 10
    functionLinenumber: 575
    functionLinenumberEnd: 577
    functionName: AudioBuffer::index_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached:
    - Option::expect
    - AudioBuffer::plane_mut
    linkageType: ''
    returnType: '&mut Self::Output'
    signature: 'fn index_mut(&mut self, index: usize) -> &mut Self::Output'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:592,1
    - Dst: push
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:595,1
    - Dst: usize::as_mut
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:595,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/buf.rs:595,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - src
    - bound
    argTypes:
    - '&''a mut [Src]'
    - Range<usize>
    constantsTouched: []
    func_position:
      end: 599
      start: 588
    functionDepth: 15
    functionLinenumber: 588
    functionLinenumberEnd: 599
    functionName: MutableAudioPlaneSlices::new
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 1
    functionsReached:
    - Default::default
    - usize::as_mut
    - Range<usize>::clone
    - push
    linkageType: ''
    returnType: Self
    signature: 'fn new<Src>(src: &''a mut [Src], bound: Range<usize>) -> SelfwhereSrc:
      AsMut<[S]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 607
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 607
    functionName: MutableAudioPlaneSlices::deref
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.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: 613
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 613
    functionName: MutableAudioPlaneSlices::deref_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/buf.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Self::Target'
    signature: fn deref_mut(&mut self) -> &mut Self::Target
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::len
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:24,1
    - Dst: usize::split_at
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:28,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:30,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:30,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:30,1
    - Dst: usize::split_at
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:33,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:35,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:35,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:35,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 39
    argCount: 4
    argNames:
    - planes
    - range
    - idx0
    - idx1
    argTypes:
    - '&[Vec<S>]'
    - Range<usize>
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 42
      start: 14
    functionDepth: 1
    functionLinenumber: 14
    functionLinenumberEnd: 42
    functionName: plane_pair_by_buffer_index
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 3
    functionsReached:
    - Range::clone
    - usize::len
    - Some
    - usize::split_at
    linkageType: ''
    returnType: Option
    signature: 'pub fn plane_pair_by_buffer_index<S: Sample>(planes: &[Vec<S>],range:
      Range<usize>,idx0: usize,idx1: usize,) -> Option<(&[S], &[S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::len
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:54,1
    - Dst: usize::split_at_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:58,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:60,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:60,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:60,1
    - Dst: usize::split_at_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:63,1
    - Dst: Some
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:65,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:65,1
    - Dst: Range::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 39
    argCount: 4
    argNames:
    - planes
    - range
    - idx0
    - idx1
    argTypes:
    - '&mut [Vec<S>]'
    - Range<usize>
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 72
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 72
    functionName: plane_pair_by_buffer_index_mut
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 2
    functionsReached:
    - usize::split_at_mut
    - usize::len
    - Some
    - Range::clone
    linkageType: ''
    returnType: Option
    signature: 'pub fn plane_pair_by_buffer_index_mut<S: Sample>(planes: &mut [Vec<S>],range:
      Range<usize>,idx0: usize,idx1: usize,) -> Option<(&mut [S], &mut [S])>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: g::e::t::_::s::u::b::_::r::a::n::g::e::panic_start_index_overflow
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: const fn panic_start_index_overflow() -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: g::e::t::_::s::u::b::_::r::a::n::g::e::panic_end_index_overflow
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: usize
    signature: const fn panic_end_index_overflow() -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&Range<usize>::len'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:90,1
    - Dst: Range::start_bound
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:93,1
    - Dst: Result::checked_add
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:95,1
    - Dst: Option::unwrap_or_else
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:95,1
    - Dst: Range::end_bound
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:100,1
    - Dst: Option::checked_add
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:101,1
    - Dst: Option::unwrap_or_else
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:101,1
    - Dst: Result::checked_add
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:111,1
    - Dst: Option::unwrap_or_else
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:111,1
    - Dst: Option::checked_add
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:114,1
    - Dst: Option::unwrap_or_else
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 2
    argNames:
    - range
    - bound
    argTypes:
    - R
    - '&Range<usize>'
    constantsTouched: []
    func_position:
      end: 117
      start: 77
    functionDepth: 10
    functionLinenumber: 77
    functionLinenumberEnd: 117
    functionName: get_sub_range
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 5
    functionsReached:
    - '&Range<usize>::len'
    - Result::checked_add
    - Option::checked_add
    - Range::start_bound
    - Option::unwrap_or_else
    - Range::end_bound
    linkageType: ''
    returnType: Range
    signature: 'pub fn get_sub_range<R>(range: R, bound: &Range<usize>) -> Range<usize>whereR:
      RangeBounds<usize>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Dst::as_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:130,1
    - Dst: '&[Src]::len'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:132,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:146,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:146,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:147,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:147,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:149,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:149,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:149,1
    - Dst: Dst::chunks_exact_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:149,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:150,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:151,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:159,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:159,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:161,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:161,1
    - Dst: Dst::chunks_exact_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:161,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:162,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 71
    argCount: 3
    argNames:
    - src
    - bound
    - dst
    argTypes:
    - '&[Src]'
    - Range<usize>
    - Dst
    constantsTouched: []
    func_position:
      end: 167
      start: 120
    functionDepth: 11
    functionLinenumber: 120
    functionLinenumberEnd: 167
    functionName: copy_to_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 5
    functionsReached:
    - into_sample
    - '&[Src]::len'
    - zip
    - as_ref
    - Dst::chunks_exact_mut
    - iter
    - Range<usize>::clone
    - Dst::as_mut
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice_interleaved<Sin, Sout, Src, Dst>(src: &[Src],bound:
      Range<usize>,mut dst: Dst,) whereSin: Sample,Sout: Sample + FromSample<Sin>,Src:
      AsRef<[Sin]>,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Src::as_ref
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:180,1
    - Dst: '&mut [Dst]::len'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:182,1
    - Dst: '&mut [Dst]::split_at_mut'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:196,1
    - Dst: String::last_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:198,1
    - Dst: expect
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:198,1
    - Dst: as_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:198,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:198,1
    - Dst: MediaSourceStream::first_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:200,1
    - Dst: expect
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:200,1
    - Dst: as_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:200,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:200,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:202,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:202,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:202,1
    - Dst: Src::chunks_exact
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:202,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:203,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:204,1
    - Dst: as_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:212,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:212,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:214,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:214,1
    - Dst: Src::chunks_exact
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:214,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:215,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 81
    argCount: 3
    argNames:
    - src
    - bound
    - dst
    argTypes:
    - Src
    - Range<usize>
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 220
      start: 170
    functionDepth: 2
    functionLinenumber: 170
    functionLinenumberEnd: 220
    functionName: copy_from_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 3
    functionsReached:
    - '&mut [Dst]::split_at_mut'
    - expect
    - into_sample
    - Src::as_ref
    - as_mut
    - zip
    - MediaSourceStream::first_mut
    - Src::chunks_exact
    - Range<usize>::clone
    - iter_mut
    - '&mut [Dst]::len'
    - String::last_mut
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_from_slice_interleaved<Sin, Sout, Src, Dst>(src: Src,bound:
      Range<usize>,dst: &mut [Dst],) whereSin: Sample,Sout: Sample + FromSample<Sin>,Src:
      AsRef<[Sin]>,Dst: AsMut<[Sout]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - Sin
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: convert
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 0
    functionsReached:
    - Result::into_sample
    linkageType: ''
    returnType: Sout
    signature: 'pub fn convert<Sin: Sample, Sout: SampleBytes + FromSample<Sin>>(s:
      Sin) -> Sout'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - s
    argTypes:
    - Sin
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: identity
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Sin
    signature: 'pub fn identity<Sin: Sample + SampleBytes>(s: Sin) -> Sin'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [Sout]::iter_mut'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:240,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:240,1
    - Dst: into_sample
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - src
    - dst
    argTypes:
    - '&[Sin]'
    - '&mut [Sout]'
    constantsTouched: []
    func_position:
      end: 243
      start: 233
    functionDepth: 2
    functionLinenumber: 233
    functionLinenumberEnd: 243
    functionName: copy_to_slice
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 4
    functionsReached:
    - zip
    - into_sample
    - '&mut [Sout]::iter_mut'
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_to_slice<Sin, Sout>(src: &[Sin], dst: &mut [Sout])whereSin:
      Sample,Sout: Sample + FromSample<Sin>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bytemuck::cast_slice_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:263,1
    - Dst: Dst::as_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:263,1
    - Dst: '&[Src]::len'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:265,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:280,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:280,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:281,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:281,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:283,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:283,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:283,1
    - Dst: Dst::chunks_exact_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:283,1
    - Dst: f
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:284,1
    - Dst: Result::to_ne_sample_bytes
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:284,1
    - Dst: f
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:285,1
    - Dst: Result::to_ne_sample_bytes
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:285,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:293,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:293,1
    - Dst: iter
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:295,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:295,1
    - Dst: Dst::chunks_exact_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:295,1
    - Dst: f
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:296,1
    - Dst: Result::to_ne_sample_bytes
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:296,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 75
    argCount: 4
    argNames:
    - src
    - bound
    - f
    - dst
    argTypes:
    - '&[Src]'
    - Range<usize>
    - F
    - Dst
    constantsTouched: []
    func_position:
      end: 301
      start: 246
    functionDepth: 11
    functionLinenumber: 246
    functionLinenumberEnd: 301
    functionName: copy_bytes_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 1
    functionsReached:
    - '&[Src]::len'
    - zip
    - as_ref
    - bytemuck::cast_slice_mut
    - iter
    - Dst::chunks_exact_mut
    - f
    - Range<usize>::clone
    - Dst::as_mut
    - Result::to_ne_sample_bytes
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_interleaved<Sout, Sin, Src, F, Dst>(src: &[Src],bound:
      Range<usize>,f: F,mut dst: Dst,) whereSout: SampleBytes,Sin: Sample,Src: AsRef<[Sin]>,F:
      Fn(Sin) -> Sout,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&[Src]::iter'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:318,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:318,1
    - Dst: '&[Src]::as_ref'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:319,1
    - Dst: Range<usize>::clone
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:319,1
    - Dst: bytemuck::cast_slice_mut
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:322,1
    - Dst: '&mut [Dst]::as_mut'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:322,1
    - Dst: '&[Src]::iter'
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:327,1
    - Dst: zip
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:327,1
    - Dst: f
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:328,1
    - Dst: Result::to_ne_sample_bytes
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 4
    argNames:
    - src
    - bound
    - f
    - dst
    argTypes:
    - '&[Src]'
    - Range<usize>
    - F
    - '&mut [Dst]'
    constantsTouched: []
    func_position:
      end: 331
      start: 304
    functionDepth: 11
    functionLinenumber: 304
    functionLinenumberEnd: 331
    functionName: copy_bytes_planar
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 1
    functionsReached:
    - zip
    - '&mut [Dst]::as_mut'
    - '&[Src]::as_ref'
    - bytemuck::cast_slice_mut
    - f
    - Range<usize>::clone
    - Result::to_ne_sample_bytes
    - '&[Src]::iter'
    linkageType: ''
    returnType: void
    signature: 'pub fn copy_bytes_planar<Sout, Sin, Src, F, Dst>(src: &[Src],bound:
      Range<usize>,f: F,dst: &mut [Dst],) whereSout: SampleBytes,Sin: Sample,Src:
      AsRef<[Sin]>,F: Fn(Sin) -> Sout,Dst: AsMut<[u8]>,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_from_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:350,1
    - Dst: copy_from_slice_interleaved
      Src: /src/symphonia/symphonia-core/src/audio/util.rs:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 364
      start: 338
    functionDepth: 3
    functionLinenumber: 338
    functionLinenumberEnd: 364
    functionName: tests::verify_copy_from_slice_interleaved
    functionSourceFile: /src/symphonia/symphonia-core/src/audio/util.rs
    functionUses: 0
    functionsReached:
    - copy_from_slice_interleaved
    linkageType: ''
    returnType: void
    signature: fn verify_copy_from_slice_interleaved()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:27,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:36,1
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:41,1
    - Dst: BTreeSet::<u32>::new
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:43,1
    - Dst: '&mut PageReader::page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:50,1
    - Dst: '&mut BTreeMap<u32, LogicalStream>::get_mut'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:53,1
    - Dst: Self::contains
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:61,1
    - Dst: Result::inspect_start_page
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:63,1
    - Dst: Self::insert
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:65,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:69,1
    - Dst: '&mut BTreeMap<u32, LogicalStream>::len'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:69,1
    - Dst: '&mut PageReader::try_next_page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:74,1
    - Dst: Self::into_inner
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:82,1
    - Dst: Result::seek_buffered
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:86,1
    - Dst: '&mut PageReader::next_page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:87,1
    - Dst: Result::seek_buffered
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:91,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:92,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 79
    argCount: 4
    argNames:
    - reader
    - pages
    - streams
    - byte_range_start
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - '&mut PageReader'
    - '&mut BTreeMap<u32, LogicalStream>'
    - u64
    constantsTouched: []
    func_position:
      end: 94
      start: 18
    functionDepth: 14
    functionLinenumber: 18
    functionLinenumberEnd: 94
    functionName: probe_stream_start
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/physical.rs
    functionUses: 1
    functionsReached:
    - '&mut PageReader::page'
    - Self::contains
    - '&mut PageReader::try_next_page'
    - Self::insert
    - Result::pos
    - Result::inspect_start_page
    - '&mut BTreeMap<u32, LogicalStream>::get_mut'
    - '&mut PageReader::next_page'
    - Self::len
    - ScopedStream::new
    - Self::into_inner
    - '&mut BTreeMap<u32, LogicalStream>::len'
    - Result::seek_buffered
    - Ok
    - BTreeSet::<u32>::new
    linkageType: ''
    returnType: Result
    signature: 'pub fn probe_stream_start(reader: &mut MediaSourceStream<''_>,pages:
      &mut PageReader,streams: &mut BTreeMap<u32, LogicalStream>,byte_range_start:
      u64,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut BTreeMap<u32, LogicalStream>::len'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:105,1
    - Dst: Result::seek
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:110,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:110,1
    - Dst: Result::seek
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:113,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:113,1
    - Dst: '&mut PageReader::next_page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:116,1
    - Dst: scan_stream_end
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:118,1
    - Dst: Option::is_none
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:123,1
    - Dst: Result::seek
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:131,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:131,1
    - Dst: '&mut PageReader::next_page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:133,1
    - Dst: '&mut PageReader::header'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:138,1
    - Dst: '&mut BTreeMap<u32, LogicalStream>::contains_key'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:140,1
    - Dst: Result::seek
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:153,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:153,1
    - Dst: '&mut PageReader::next_page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:155,1
    - Dst: scan_stream_end
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:157,1
    - Dst: Result::seek
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:164,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:164,1
    - Dst: '&mut PageReader::next_page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:165,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:167,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 85
    argCount: 5
    argNames:
    - reader
    - pages
    - streams
    - byte_range_start
    - byte_range_end
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - '&mut PageReader'
    - '&mut BTreeMap<u32, LogicalStream>'
    - u64
    - u64
    constantsTouched: []
    func_position:
      end: 168
      start: 96
    functionDepth: 12
    functionLinenumber: 96
    functionLinenumberEnd: 168
    functionName: probe_stream_end
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/physical.rs
    functionUses: 1
    functionsReached:
    - Option::is_none
    - Result::seek
    - '&mut PageReader::header'
    - '&mut BTreeMap<u32, LogicalStream>::contains_key'
    - '&mut PageReader::next_page'
    - SeekFrom::Start
    - '&mut BTreeMap<u32, LogicalStream>::len'
    - scan_stream_end
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn probe_stream_end(reader: &mut MediaSourceStream<''_>,pages:
      &mut PageReader,streams: &mut BTreeMap<u32, LogicalStream>,byte_range_start:
      u64,byte_range_end: u64,) -> Result<Option<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:176,1
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:178,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:183,1
    - Dst: '&mut PageReader::page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:187,1
    - Dst: '&mut BTreeMap<u32, LogicalStream>::get_mut'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:191,1
    - Dst: Result::inspect_end_page
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:197,1
    - Dst: Result::entry
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:197,1
    - Dst: or_default
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:197,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:200,1
    - Dst: Self::pos
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:200,1
    - Dst: '&mut PageReader::next_page'
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:203,1
    - Dst: Result::is_err
      Src: /src/symphonia/symphonia-format-ogg/src/physical.rs:203,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 40
    argCount: 4
    argNames:
    - reader
    - pages
    - streams
    - byte_range_end
    argTypes:
    - '&mut MediaSourceStream<''_>'
    - '&mut PageReader'
    - '&mut BTreeMap<u32, LogicalStream>'
    - u64
    constantsTouched: []
    func_position:
      end: 209
      start: 170
    functionDepth: 15
    functionLinenumber: 170
    functionLinenumberEnd: 209
    functionName: scan_stream_end
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/physical.rs
    functionUses: 1
    functionsReached:
    - Result::is_err
    - '&mut PageReader::page'
    - or_default
    - Result::entry
    - Result::pos
    - Some
    - '&mut BTreeMap<u32, LogicalStream>::get_mut'
    - '&mut PageReader::next_page'
    - ScopedStream::new
    - Default::default
    - Result::inspect_end_page
    - Self::pos
    linkageType: ''
    returnType: Option
    signature: 'fn scan_stream_end(reader: &mut MediaSourceStream<''_>,pages: &mut
      PageReader,streams: &mut BTreeMap<u32, LogicalStream>,byte_range_end: u64,)
      -> Option<u64>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:36,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:39,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:42,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:46,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:49,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:53,1
    - Dst: Result::read_u64
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:56,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:57,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:58,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:59,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:60,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:62,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 54
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 73
      start: 34
    functionDepth: 13
    functionLinenumber: 34
    functionLinenumberEnd: 73
    functionName: read_page_header
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 1
    functionsReached:
    - Result::read_u32
    - Result::read_u64
    - Result::read_quad_bytes
    - Result::read_byte
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_page_header<B: ReadBytes>(reader: &mut B) -> Result<PageHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u32::from_be_bytes
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:78,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:78,1
    - Dst: to_be_bytes
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:80,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:82,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:82,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 86
      start: 77
    functionDepth: 13
    functionLinenumber: 77
    functionLinenumberEnd: 86
    functionName: sync_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 1
    functionsReached:
    - Result::read_quad_bytes
    - to_be_bytes
    - u32::from_be_bytes
    - Result::read_u8
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn sync_page<B: ReadBytes>(reader: &mut B) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:99,1
    - Dst: lens.sum::<u16>
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:99,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:101,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: PagePackets::partial_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - lens.sum::<u16>
    - len
    - Some
    linkageType: ''
    returnType: Option
    signature: pub fn partial_packet(self) -> Option<&'a [u8]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: next
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:109,1
    - Dst: split_at
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:111,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:111,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 117
      start: 108
    functionDepth: 15
    functionLinenumber: 108
    functionLinenumberEnd: 117
    functionName: PagePackets::next
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - split_at
    - Some
    - next
    linkageType: ''
    returnType: Option
    signature: fn next(&mut self) -> Option<Self::Item>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 11
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: Page::packets
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 0
    functionsReached:
    - iter
    linkageType: ''
    returnType: PagePackets
    signature: pub fn packets(&self) -> PagePackets<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: Page::num_packets
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: usize
    signature: pub fn num_packets(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:157,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:158,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:159,1
    - Dst: try_next_page
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:163,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 166
      start: 152
    functionDepth: 15
    functionLinenumber: 152
    functionLinenumberEnd: 166
    functionName: PageReader::try_new
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 1
    functionsReached:
    - Vec::new
    - Ok
    - Default::default
    - try_next_page
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new<B>(reader: &mut B) -> Result<Self>whereB: ReadBytes
      + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:174,1
    - Dst: sync_page
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:177,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:181,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:184,1
    - Dst: read_page_header
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:187,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:187,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:204,1
    - Dst: Crc32::new
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:207,1
    - Dst: process_buf_bytes
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:209,1
    - Dst: MonitorStream::new
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:212,1
    - Dst: clear
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:220,1
    - Dst: MonitorStream::read_byte
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:223,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:225,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:226,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:231,1
    - Dst: PageReader::read_page_body
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:236,1
    - Dst: MonitorStream::monitor
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:238,1
    - Dst: '&M::crc'
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:238,1
    - Dst: clear
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:245,1
    - Dst: MonitorStream::into_inner
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:249,1
    - Dst: B::seek_buffered
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:249,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:251,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:256,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 95
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 257
      start: 169
    functionDepth: 14
    functionLinenumber: 169
    functionLinenumberEnd: 257
    functionName: PageReader::try_next_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 3
    functionsReached:
    - Result::pos
    - Ok
    - symphonia_core::errors::decode_error
    - push
    - read_page_header
    - MonitorStream::monitor
    - Result::read_buf_exact
    - '&M::crc'
    - copy_from_slice
    - clear
    - MonitorStream::read_byte
    - MonitorStream::into_inner
    - MonitorStream::new
    - process_buf_bytes
    - PageReader::read_page_body
    - B::seek_buffered
    - usize::from
    - u16::from
    - BufReader::new
    - Crc32::new
    - sync_page
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_next_page<B>(&mut self, reader: &mut B) -> Result<()>whereB:
      ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: PageReader::try_next_page
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:266,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:268,1
    - Dst: Error::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:268,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:272,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 273
      start: 261
    functionDepth: 15
    functionLinenumber: 261
    functionLinenumberEnd: 273
    functionName: PageReader::next_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 3
    functionsReached:
    - Ok
    - PageReader::try_next_page
    - Error::from
    - Err
    linkageType: ''
    returnType: Result
    signature: 'pub fn next_page<B>(&mut self, reader: &mut B) -> Result<()>whereB:
      ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: PageReader::try_next_page
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:283,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:285,1
    - Dst: Error::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:285,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:289,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - reader
    - serial
    argTypes:
    - '&mut B'
    - u32
    constantsTouched: []
    func_position:
      end: 290
      start: 277
    functionDepth: 15
    functionLinenumber: 277
    functionLinenumberEnd: 290
    functionName: PageReader::next_page_for_serial
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 0
    functionsReached:
    - Ok
    - PageReader::try_next_page
    - Error::from
    - Err
    linkageType: ''
    returnType: Result
    signature: 'pub fn next_page_for_serial<B>(&mut self, reader: &mut B, serial:
      u32) -> Result<()>whereB: ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: first
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:294,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:294,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 295
      start: 293
    functionDepth: 9
    functionLinenumber: 293
    functionLinenumberEnd: 295
    functionName: PageReader::first_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - first
    - map
    linkageType: ''
    returnType: Option
    signature: pub fn first_packet(&self) -> Option<&[u8]>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 300
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionName: PageReader::header
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: PageHeader
    signature: pub fn header(&self) -> PageHeader
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 311
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 311
    functionName: PageReader::page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Page
    signature: pub fn page(&self) -> Page<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:317,1
    - Dst: resize
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:322,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:322,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:327,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/page.rs:329,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 36
    argCount: 2
    argNames:
    - reader
    - len
    argTypes:
    - '&mut B'
    - usize
    constantsTouched: []
    func_position:
      end: 330
      start: 313
    functionDepth: 15
    functionLinenumber: 313
    functionLinenumberEnd: 330
    functionName: PageReader::read_page_body
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/page.rs
    functionUses: 1
    functionsReached:
    - len
    - Result::read_buf_exact
    - Ok
    - Default::default
    - resize
    linkageType: ''
    returnType: Result
    signature: 'fn read_page_body<B: ReadBytes>(&mut self, reader: &mut B, len: usize)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::ensure_seekback_buffer
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:53,1
    - Dst: PageReader::try_new
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:55,1
    - Dst: header
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:57,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:58,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:63,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:64,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:66,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:67,1
    - Dst: start_new_physical_stream
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:73,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:75,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 76
      start: 51
    functionDepth: 16
    functionLinenumber: 51
    functionLinenumberEnd: 76
    functionName: OggReader::try_new
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Default::default
    - unwrap_or_default
    - header
    - symphonia_core::errors::unsupported_error
    - Option::ensure_seekback_buffer
    - Ok
    - PageReader::try_new
    - start_new_physical_stream
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: try_next_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:81,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:83,1
    - Dst: Error::from
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:83,1
    - Dst: page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:90,1
    - Dst: OggReader::start_new_physical_stream
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:94,1
    - Dst: symphonia_core::errors::reset_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:95,1
    - Dst: get_mut
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:98,1
    - Dst: Result::read_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:100,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:107,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 108
      start: 78
    functionDepth: 15
    functionLinenumber: 78
    functionLinenumberEnd: 108
    functionName: OggReader::read_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - Ok
    - Error::from
    - try_next_page
    - page
    - get_mut
    - Err
    - Result::read_page
    - symphonia_core::errors::reset_error
    - OggReader::start_new_physical_stream
    linkageType: ''
    returnType: Result
    signature: fn read_page(&mut self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:111,1
    - Dst: all
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:111,1
    - Dst: Result::has_read_last_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:111,1
    - Dst: Option::unwrap_or
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 11
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: OggReader::have_all_streams_read_last_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 2
    functionsReached:
    - Result::has_read_last_page
    - Option::unwrap_or
    - iter
    - all
    linkageType: ''
    returnType: bool
    signature: fn have_all_streams_read_last_page(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:115,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:117,1
    - Dst: Result::peek_packet
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 123
      start: 114
    functionDepth: 14
    functionLinenumber: 114
    functionLinenumberEnd: 123
    functionName: OggReader::peek_logical_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - get
    - page
    - Result::peek_packet
    linkageType: ''
    returnType: Option
    signature: fn peek_logical_packet(&self) -> Option<&Packet>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:126,1
    - Dst: get_mut
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:129,1
    - Dst: Result::consume_packet
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 14
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: OggReader::discard_logical_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Result::consume_packet
    - page
    - get_mut
    linkageType: ''
    returnType: void
    signature: fn discard_logical_packet(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:136,1
    - Dst: get_mut
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:140,1
    - Dst: Result::next_packet
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:141,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:142,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:142,1
    - Dst: OggReader::read_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:146,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:148,1
    - Dst: OggReader::have_all_streams_read_last_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:150,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:152,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:156,1
    - Dst: Error::IoError
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:156,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:158,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 161
      start: 134
    functionDepth: 14
    functionLinenumber: 134
    functionLinenumberEnd: 161
    functionName: OggReader::next_logical_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - OggReader::read_page
    - Error::IoError
    - Err
    - Some
    - page
    - get_mut
    - Result::next_packet
    - Ok
    - OggReader::have_all_streams_read_last_page
    - Result::kind
    linkageType: ''
    returnType: Result
    signature: fn next_logical_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_mut
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:165,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:167,1
    - Dst: Timestamp::saturating_sub
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:173,1
    - Dst: Result::max_rap_period
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:173,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:179,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:185,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:195,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:195,1
    - Dst: next_page_for_serial
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:198,1
    - Dst: Result::inspect_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:213,1
    - Dst: page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:213,1
    - Dst: seek
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:242,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:242,1
    - Dst: next_page_for_serial
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:244,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:246,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:252,1
    - Dst: Result::reset
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:253,1
    - Dst: Result::read_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:257,1
    - Dst: page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:257,1
    - Dst: OggReader::peek_logical_packet
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:264,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:271,1
    - Dst: OggReader::discard_logical_packet
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:277,1
    - Dst: OggReader::read_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:279,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:281,1
    - Dst: OggReader::have_all_streams_read_last_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:283,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:284,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:288,1
    - Dst: Error::IoError
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:288,1
    - Dst: Err
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:290,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:302,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 157
    argCount: 2
    argNames:
    - serial
    - required_ts
    argTypes:
    - u32
    - Timestamp
    constantsTouched: []
    func_position:
      end: 303
      start: 163
    functionDepth: 12
    functionLinenumber: 163
    functionLinenumberEnd: 303
    functionName: OggReader::do_seek
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Timestamp::saturating_sub
    - iter_mut
    - Ok
    - Result::inspect_page
    - symphonia_core::errors::decode_error
    - Error::IoError
    - next_page_for_serial
    - is_seekable
    - checked_add
    - Result::kind
    - Result::reset
    - get_mut
    - symphonia_core::errors::seek_error
    - Result::read_page
    - OggReader::have_all_streams_read_last_page
    - OggReader::peek_logical_packet
    - OggReader::read_page
    - Result::max_rap_period
    - SeekFrom::Start
    - page
    - seek
    - Err
    - OggReader::discard_logical_packet
    linkageType: ''
    returnType: Result
    signature: 'fn do_seek(&mut self, serial: u32, required_ts: Timestamp) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BTreeMap::<u32, LogicalStream>::new
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:307,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:310,1
    - Dst: header
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:324,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:330,1
    - Dst: first_packet
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:333,1
    - Dst: mappings::detect
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:335,1
    - Dst: Self::insert
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:342,1
    - Dst: LogicalStream::new
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:342,1
    - Dst: try_next_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:347,1
    - Dst: page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:356,1
    - Dst: Self::get_mut
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:358,1
    - Dst: Result::read_page_init
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:359,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:365,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:370,1
    - Dst: Result::has_packets
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:377,1
    - Dst: pos
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:384,1
    - Dst: try_next_page
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:386,1
    - Dst: physical::probe_stream_start
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:390,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:397,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:401,1
    - Dst: byte_len
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:402,1
    - Dst: physical::probe_stream_end
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:403,1
    - Dst: clear
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:416,1
    - Dst: Self::iter
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:419,1
    - Dst: Result::is_ready
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:422,1
    - Dst: push
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:426,1
    - Dst: Result::track
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:426,1
    - Dst: Result::clone
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:426,1
    - Dst: MediaInfo::from_tracks
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:430,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:439,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 162
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 440
      start: 305
    functionDepth: 14
    functionLinenumber: 305
    functionLinenumberEnd: 440
    functionName: OggReader::start_new_physical_stream
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Result::clone
    - physical::probe_stream_end
    - header
    - pos
    - MediaInfo::from_tracks
    - try_next_page
    - byte_len
    - BTreeMap::<u32, LogicalStream>::new
    - Ok
    - push
    - LogicalStream::new
    - Self::iter
    - mappings::detect
    - Self::insert
    - Result::has_packets
    - is_seekable
    - first_packet
    - clear
    - Result::read_page_init
    - physical::probe_stream_start
    - Some
    - Default::default
    - Self::get_mut
    - Result::track
    - page
    - Result::is_ready
    linkageType: ''
    returnType: Result
    signature: fn start_new_physical_stream(&mut self) -> Result<()>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:445,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 446
      start: 444
    functionDepth: 0
    functionLinenumber: 444
    functionLinenumberEnd: 446
    functionName: OggReader::score
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:454,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:454,1
    - Dst: OggReader::try_new
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 455
      start: 450
    functionDepth: 11
    functionLinenumber: 450
    functionLinenumberEnd: 455
    functionName: OggReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - OggReader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 464
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 464
    functionName: OggReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: OggReader::format_info
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 474
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 474
    functionName: OggReader::media_info
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: OggReader::next_logical_packet
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 478
      start: 476
    functionDepth: 15
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionName: OggReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - OggReader::next_logical_packet
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 482
      start: 480
    functionDepth: 2
    functionLinenumber: 480
    functionLinenumberEnd: 482
    functionName: OggReader::metadata
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 486
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 486
    functionName: OggReader::chapters
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 490
      start: 488
    functionDepth: 0
    functionLinenumber: 488
    functionLinenumberEnd: 490
    functionName: OggReader::tracks
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:498,1
    - Dst: Result::track
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:499,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:503,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:508,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:510,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:508,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:511,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:514,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:519,1
    - Dst: first
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:530,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:535,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:539,1
    - Dst: Result::track
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:540,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:543,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:543,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:546,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:546,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:548,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:552,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:557,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:559,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:557,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:560,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:563,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:571,1
    - Dst: OggReader::do_seek
      Src: /src/symphonia/symphonia-format-ogg/src/demuxer.rs:581,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 95
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 582
      start: 492
    functionDepth: 12
    functionLinenumber: 492
    functionLinenumberEnd: 582
    functionName: OggReader::seek
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Result::track
    - get
    - first
    - calc_timestamp
    - ok_or
    - Error::SeekError
    - symphonia_core::errors::seek_error
    - OggReader::do_seek
    - checked_add
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 589
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 589
    functionName: OggReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:66,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mapper
    argTypes:
    - Box<dyn Mapper>
    constantsTouched: []
    func_position:
      end: 73
      start: 63
    functionDepth: 15
    functionLinenumber: 63
    functionLinenumberEnd: 73
    functionName: LogicalStream::new
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 1
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(mapper: Box<dyn Mapper>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:79,1
    - Dst: reset
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 13
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: LogicalStream::reset
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - clear
    - reset
    linkageType: ''
    returnType: void
    signature: pub fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_ready
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: LogicalStream::is_ready
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - is_ready
    linkageType: ''
    returnType: bool
    signature: pub fn is_ready(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: max_rap_period
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: LogicalStream::max_rap_period
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - max_rap_period
    linkageType: ''
    returnType: Duration
    signature: pub fn max_rap_period(&self) -> Duration
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: track
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 12
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: LogicalStream::track
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - track
    linkageType: ''
    returnType: '&Track'
    signature: pub fn track(&self) -> &Track
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 9
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: LogicalStream::has_read_last_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - map
    linkageType: ''
    returnType: Option
    signature: pub fn has_read_last_page(&self) -> Option<bool>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: LogicalStream::read_page_init
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - page
    argTypes:
    - '&Page<''_>'
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 11
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: LogicalStream::read_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - LogicalStream::read_page_init
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_page(&mut self, page: &Page<''_>) -> Result<Vec<SideData>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:111,1
    - Dst: take
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:130,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:133,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:138,1
    - Dst: Result::packets
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:149,1
    - Dst: Result::num_packets
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:155,1
    - Dst: next
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:157,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:161,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:168,1
    - Dst: LogicalStream::get_packet
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:172,1
    - Dst: map_packet
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:177,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:179,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:180,1
    - Dst: PacketBuilder::new
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:182,1
    - Dst: Self::track_id
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:182,1
    - Dst: pts
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:182,1
    - Dst: dur
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:182,1
    - Dst: data
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:182,1
    - Dst: trim_start
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:182,1
    - Dst: build
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:182,1
    - Dst: push_back
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:190,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:192,1
    - Dst: partial_packet
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:202,1
    - Dst: LogicalStream::save_partial_packet
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:203,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:207,1
    - Dst: absgp_to_ts
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:210,1
    - Dst: as_mut
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:213,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:213,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:217,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:220,1
    - Dst: LogicalStream::is_single_page_stream
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:227,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:230,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:242,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:242,1
    - Dst: into
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:242,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:244,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:260,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:260,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:282,1
    - Dst: skip
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:282,1
    - Dst: page_start_ts::saturating_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:288,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:292,1
    - Dst: abs_delta
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:297,1
    - Dst: min
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:297,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:301,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:305,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 224
    argCount: 2
    argNames:
    - page
    - is_init_page
    argTypes:
    - '&Page<''_>'
    - bool
    constantsTouched: []
    func_position:
      end: 306
      start: 109
    functionDepth: 10
    functionLinenumber: 109
    functionLinenumberEnd: 306
    functionName: LogicalStream::read_page_init
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 1
    functionsReached:
    - push_back
    - skip
    - page_start_ts::saturating_add
    - get
    - absgp_to_ts
    - take
    - partial_packet
    - iter_mut
    - Ok
    - as_mut
    - saturating_sub
    - symphonia_core::errors::decode_error
    - expect
    - Self::track_id
    - abs_delta
    - LogicalStream::get_packet
    - Result::num_packets
    - checked_add
    - build
    - trim_start
    - len
    - next
    - data
    - LogicalStream::save_partial_packet
    - Some
    - Vec::new
    - and_then
    - Timestamp::from
    - dur
    - LogicalStream::is_single_page_stream
    - saturating_add
    - into
    - map_packet
    - min
    - Result::packets
    - Self::push
    - pts
    - PacketBuilder::new
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_page_init(&mut self, page: &Page<''_>, is_init_page: bool)
      -> Result<Vec<SideData>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_empty
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 311
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 311
    functionName: LogicalStream::has_packets
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - is_empty
    linkageType: ''
    returnType: bool
    signature: pub fn has_packets(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 316
      start: 314
    functionDepth: 2
    functionLinenumber: 314
    functionLinenumberEnd: 316
    functionName: LogicalStream::peek_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: Option
    signature: pub fn peek_packet(&self) -> Option<&Packet>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pop_front
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 321
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionName: LogicalStream::next_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - pop_front
    linkageType: ''
    returnType: Option
    signature: pub fn next_packet(&mut self) -> Option<Packet>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: pop_front
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 326
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 326
    functionName: LogicalStream::consume_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - pop_front
    linkageType: ''
    returnType: void
    signature: pub fn consume_packet(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:331,1
    - Dst: make_parser
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:336,1
    - Dst: Result::packets
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:348,1
    - Dst: parse_next_packet_dur
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:349,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:352,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:356,1
    - Dst: absgp_to_ts
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:363,1
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:370,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:376,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:376,1
    - Dst: track_mut
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:387,1
    - Dst: Result::with_start_ts
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:389,1
    - Dst: Result::with_delay
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:392,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:392,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:396,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 80
    argCount: 1
    argNames:
    - page
    argTypes:
    - '&Page<''_>'
    constantsTouched: []
    func_position:
      end: 397
      start: 330
    functionDepth: 11
    functionLinenumber: 330
    functionLinenumberEnd: 397
    functionName: LogicalStream::inspect_start_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - track_mut
    - get
    - absgp_to_ts
    - Some
    - Result::with_delay
    - is_some
    - Result::packets
    - parse_next_packet_dur
    - Timestamp::new
    - checked_add
    - checked_sub
    - Result::with_start_ts
    - make_parser
    linkageType: ''
    returnType: void
    signature: 'pub fn inspect_start_page(&mut self, page: &Page<''_>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: is_some
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:405,1
    - Dst: make_parser
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:414,1
    - Dst: Result::packets
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:431,1
    - Dst: parse_next_packet_dur
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:432,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:435,1
    - Dst: absgp_to_ts
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:442,1
    - Dst: checked_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:452,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:452,1
    - Dst: abs_delta
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:455,1
    - Dst: is_some_and
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:457,1
    - Dst: map
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:462,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:462,1
    - Dst: duration_from
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:466,1
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:469,1
    - Dst: zip
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:473,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:473,1
    - Dst: checked_sub
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:475,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:492,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:500,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:501,1
    - Dst: track_mut
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:503,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:505,1
    - Dst: Result::with_duration
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:506,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:506,1
    - Dst: Result::with_padding
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:509,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:512,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:516,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 124
    argCount: 2
    argNames:
    - state
    - page
    argTypes:
    - '&mut InspectState'
    - '&Page<''_>'
    constantsTouched: []
    func_position:
      end: 517
      start: 403
    functionDepth: 11
    functionLinenumber: 403
    functionLinenumberEnd: 517
    functionName: LogicalStream::inspect_end_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - get
    - absgp_to_ts
    - is_some
    - parse_next_packet_dur
    - Result::with_duration
    - abs_delta
    - map
    - is_some_and
    - Result::with_num_frames
    - checked_add
    - Result::with_padding
    - zip
    - Some
    - duration_from
    - and_then
    - unwrap_or
    - make_parser
    - track_mut
    - Result::packets
    - checked_sub
    - Duration::from
    linkageType: ''
    returnType: void
    signature: 'pub fn inspect_end_page(&mut self, state: &mut InspectState, page:
      &Page<''_>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: make_parser
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:525,1
    - Dst: Result::packets
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:526,1
    - Dst: parse_next_packet_dur
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:527,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:529,1
    - Dst: saturating_add
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:530,1
    - Dst: absgp_to_ts
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:534,1
    - Dst: saturating_sub
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:537,1
    - Dst: is_negative
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:545,1
    - Dst: Timestamp::new
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:546,1
    - Dst: get
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:546,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 42
    argCount: 1
    argNames:
    - page
    argTypes:
    - '&Page<''_>'
    constantsTouched: []
    func_position:
      end: 554
      start: 520
    functionDepth: 11
    functionLinenumber: 520
    functionLinenumberEnd: 554
    functionName: LogicalStream::inspect_page
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 0
    functionsReached:
    - saturating_add
    - get
    - absgp_to_ts
    - Result::packets
    - parse_next_packet_dur
    - Timestamp::new
    - saturating_sub
    - is_negative
    - make_parser
    linkageType: ''
    returnType: (Timestamp, Timestamp)
    signature: 'pub fn inspect_page(&mut self, page: &Page<''_>) -> (Timestamp, Timestamp)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 576
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 576
    functionName: LogicalStream::is_single_page_stream
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_single_page_stream(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::from
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:580,1
    - Dst: Result::split_at_mut
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:586,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:589,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:593,1
    - Dst: Result::into_boxed_slice
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:595,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 1
    argNames:
    - packet_buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 597
      start: 578
    functionDepth: 1
    functionLinenumber: 578
    functionLinenumberEnd: 597
    functionName: LogicalStream::get_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 1
    functionsReached:
    - copy_from_slice
    - Box::from
    - Result::split_at_mut
    - Result::into_boxed_slice
    linkageType: ''
    returnType: Box
    signature: 'fn get_packet(&mut self, packet_buf: &[u8]) -> Box<[u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:600,1
    - Dst: len
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:602,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:605,1
    - Dst: resize
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:612,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:612,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:615,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/logical.rs:618,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 44
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 619
      start: 599
    functionDepth: 15
    functionLinenumber: 599
    functionLinenumberEnd: 619
    functionName: LogicalStream::save_partial_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/logical.rs
    functionUses: 1
    functionsReached:
    - len
    - copy_from_slice
    - Ok
    - Default::default
    - symphonia_core::errors::decode_error
    - resize
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'fn save_partial_packet(&mut self, buf: &[u8]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: flac::detect
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:20,1
    - Dst: or
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:20,1
    - Dst: vorbis::detect
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:21,1
    - Dst: or
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:20,1
    - Dst: opus::detect
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:22,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:20,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:25,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - serial
    - buf
    argTypes:
    - u32
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 26
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 26
    functionName: detect
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 2
    functionsReached:
    - flac::detect
    - or
    - or_else
    - opus::detect
    - vorbis::detect
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn detect(serial: u32, buf: &[u8]) -> Result<Option<Box<dyn Mapper>>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:274,1
    - Dst: '&mut B::read_u8'
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:274,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:282,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:282,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:289,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:293,1
    - Dst: u32::leading_zeros
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:299,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:304,1
    - Dst: '&mut B::read_u8'
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:304,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:309,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:309,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 1
    argNames:
    - src
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 310
      start: 272
    functionDepth: 14
    functionLinenumber: 272
    functionLinenumberEnd: 310
    functionName: utf8_decode_be_u64
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/frame.rs
    functionUses: 2
    functionsReached:
    - u64::from
    - u32::leading_zeros
    - Some
    - '&mut B::read_u8'
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn utf8_decode_be_u64<B: ReadBytes>(src: &mut B) -> Result<Option<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MonitorStream::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:161,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:161,1
    - Dst: Crc8Ccitt::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:161,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:164,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:168,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:172,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:176,1
    - Dst: utf8_decode_be_u64
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:184,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:186,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:191,1
    - Dst: utf8_decode_be_u64
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:198,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:200,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:205,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:212,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:217,1
    - Dst: MonitorStream::read_u8
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:217,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:219,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:221,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:224,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:227,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:232,1
    - Dst: MonitorStream::read_u8
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:236,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:239,1
    - Dst: MonitorStream::read_be_u16
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:242,1
    - Dst: MonitorStream::monitor
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:248,1
    - Dst: '&M::crc'
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:248,1
    - Dst: MonitorStream::into_inner
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:251,1
    - Dst: B::read_u8
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:251,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:254,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:259,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 122
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 260
      start: 159
    functionDepth: 14
    functionLinenumber: 159
    functionLinenumberEnd: 260
    functionName: decode_frame_header
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 2
    functionsReached:
    - B::read_u8
    - MonitorStream::into_inner
    - u64::from
    - MonitorStream::monitor
    - Crc8Ccitt::new
    - MonitorStream::new
    - MonitorStream::read_be_u16
    - '&M::crc'
    - MonitorStream::read_u8
    - BufReader::new
    - utf8_decode_be_u64
    - Ok
    - symphonia_core::errors::decode_error
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn decode_frame_header(buf: &[u8]) -> Result<FrameHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: decode_frame_header
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:266,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:266,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:270,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 15
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: FlacPacketParser::parse_next_packet_dur
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 0
    functionsReached:
    - Result::ok
    - decode_frame_header
    - Duration::from
    linkageType: ''
    returnType: (Duration, Duration)
    signature: 'fn parse_next_packet_dur(&mut self, packet: &[u8]) -> (Duration, Duration)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 281
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionName: FlacMapper::name
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&''static str'
    signature: fn name(&self) -> &'static str
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 285
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionName: FlacMapper::track
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&Track'
    signature: fn track(&self) -> &Track
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 289
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionName: FlacMapper::track_mut
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Track'
    signature: fn track_mut(&mut self) -> &mut Track
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:292,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 293
      start: 291
    functionDepth: 10
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionName: FlacMapper::make_parser
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 0
    functionsReached:
    - Box::new
    - Some
    linkageType: ''
    returnType: Option
    signature: fn make_parser(&self) -> Option<Box<dyn super::PacketParser>>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 297
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionName: FlacMapper::reset
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:300,1
    - Dst: Self::read_u8
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:300,1
    - Dst: decode_frame_header
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:305,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:305,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:310,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:310,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:315,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:318,1
    - Dst: MetadataBlockHeader::read
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:321,1
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:325,1
    - Dst: symphonia_metadata::embedded::flac::read_flac_comment_block
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:327,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:329,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:331,1
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:334,1
    - Dst: Self::add_visual
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:336,1
    - Dst: symphonia_metadata::embedded::flac::read_flac_picture_block
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:336,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:338,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:340,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs:342,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 345
      start: 299
    functionDepth: 14
    functionLinenumber: 299
    functionLinenumberEnd: 345
    functionName: FlacMapper::map_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
    functionUses: 0
    functionsReached:
    - Self::build
    - MetadataBuilder::new
    - Result::ok
    - symphonia_metadata::embedded::flac::read_flac_picture_block
    - Self::read_u8
    - MetadataBlockHeader::read
    - symphonia_metadata::embedded::flac::read_flac_comment_block
    - Self::add_visual
    - decode_frame_header
    - BufReader::new
    - Ok
    - Duration::from
    linkageType: ''
    returnType: Result
    signature: 'fn map_packet(&mut self, packet: &[u8]) -> Result<MapResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::first
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:76,1
    - Dst: Result::get
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:113,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:129,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 66
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 130
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 130
    functionName: OpusPacketParser::parse_next_packet_dur
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
    functionUses: 0
    functionsReached:
    - Result::first
    - Duration::new
    - Result::get
    linkageType: ''
    returnType: (Duration, Duration)
    signature: 'fn parse_next_packet_dur(&mut self, packet: &[u8]) -> (Duration, Duration)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: OpusMapper::name
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&''static str'
    signature: fn name(&self) -> &'static str
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: OpusMapper::reset
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: OpusMapper::track
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&Track'
    signature: fn track(&self) -> &Track
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: OpusMapper::track_mut
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Track'
    signature: fn track_mut(&mut self) -> &mut Track
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:156,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 10
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: OpusMapper::make_parser
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
    functionUses: 0
    functionsReached:
    - Box::new
    - Some
    linkageType: ''
    returnType: Option
    signature: fn make_parser(&self) -> Option<Box<dyn super::PacketParser>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_next_packet_dur
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:161,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:162,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:165,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:169,1
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:173,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:174,1
    - Dst: vorbis::read_vorbis_comment
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:176,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:178,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:182,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs:186,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 38
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 189
      start: 159
    functionDepth: 16
    functionLinenumber: 159
    functionLinenumberEnd: 189
    functionName: OpusMapper::map_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
    functionUses: 0
    functionsReached:
    - Self::build
    - MetadataBuilder::new
    - vorbis::read_vorbis_comment
    - Result::read_buf_exact
    - BufReader::new
    - parse_next_packet_dur
    - Ok
    - Default::default
    linkageType: ''
    returnType: Result
    signature: 'fn map_packet(&mut self, packet: &[u8]) -> Result<MapResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - bs0_exp
    - bs1_exp
    - num_modes
    - modes_block_flags
    argTypes:
    - u8
    - u8
    - u8
    - u64
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: VorbisPacketParser::new
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'fn new(bs0_exp: u8, bs1_exp: u8, num_modes: u8, modes_block_flags:
      u64) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: VorbisPacketParser::reset
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:65,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:68,1
    - Dst: ilog
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:74,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:74,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:77,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:104,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:106,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 54
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 107
      start: 64
    functionDepth: 16
    functionLinenumber: 64
    functionLinenumberEnd: 107
    functionName: VorbisPacketParser::parse_next_packet_dur
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - Some
    - ilog
    - BitReaderRtl::new
    - i32::read_bool
    - Duration::new
    - u32::from
    linkageType: ''
    returnType: (Duration, Duration)
    signature: 'fn parse_next_packet_dur(&mut self, packet: &[u8]) -> (Duration, Duration)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: VorbisMapper::name
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&''static str'
    signature: fn name(&self) -> &'static str
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: max
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:161,1
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 165
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 165
    functionName: VorbisMapper::max_rap_period
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - Duration::new
    - max
    linkageType: ''
    returnType: Duration
    signature: fn max_rap_period(&self) -> Duration
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: VorbisMapper::track
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&Track'
    signature: fn track(&self) -> &Track
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 173
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionName: VorbisMapper::track_mut
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Track'
    signature: fn track_mut(&mut self) -> &mut Track
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 179
      start: 175
    functionDepth: 13
    functionLinenumber: 175
    functionLinenumberEnd: 179
    functionName: VorbisMapper::reset
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - reset
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:184,1
    - Dst: VorbisPacketParser::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:184,1
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 194
      start: 181
    functionDepth: 10
    functionLinenumber: 181
    functionLinenumberEnd: 194
    functionName: VorbisMapper::make_parser
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - Box::new
    - Some
    - VorbisPacketParser::new
    linkageType: ''
    returnType: Option
    signature: fn make_parser(&self) -> Option<Box<dyn PacketParser>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:197,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:200,1
    - Dst: parse_next_packet_dur
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:205,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:209,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:214,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:218,1
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:224,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:225,1
    - Dst: read_vorbis_comment
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:227,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:229,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:231,1
    - Dst: as_mut
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:236,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:236,1
    - Dst: audio_mut
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:236,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:236,1
    - Dst: take
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:245,1
    - Dst: expect
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:245,1
    - Dst: into_vec
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:245,1
    - Dst: '&mut Self::extend_from_slice'
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:252,1
    - Dst: Result::with_extra_data
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:255,1
    - Dst: '&mut Self::into_boxed_slice'
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:255,1
    - Dst: read_setup
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:258,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:258,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:259,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:264,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:264,1
    - Dst: VorbisPacketParser::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:270,1
    - Dst: replace
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:277,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:282,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:286,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 105
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 290
      start: 196
    functionDepth: 14
    functionLinenumber: 196
    functionLinenumberEnd: 290
    functionName: VorbisMapper::map_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - MetadataBuilder::new
    - take
    - '&mut Self::into_boxed_slice'
    - parse_next_packet_dur
    - VorbisPacketParser::new
    - Ok
    - as_mut
    - symphonia_core::errors::decode_error
    - Result::len
    - Self::build
    - expect
    - replace
    - Result::read_buf_exact
    - enumerate
    - read_setup
    - read_vorbis_comment
    - '&mut Self::extend_from_slice'
    - Result::read_u8
    - Default::default
    - into_vec
    - audio_mut
    - Result::iter
    - Result::with_extra_data
    - BufReader::new
    linkageType: ''
    returnType: Result
    signature: 'fn map_packet(&mut self, packet: &[u8]) -> Result<MapResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 294
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 294
    functionName: VorbisMapper::is_ready
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_ready(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:410,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:413,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:418,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:421,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:425,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:428,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:432,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:435,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:440,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:443,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:446,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:450,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:451,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:452,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:455,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:462,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:466,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:471,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:475,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:476,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:479,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 105
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 480
      start: 408
    functionDepth: 14
    functionLinenumber: 408
    functionLinenumberEnd: 480
    functionName: read_ident_header
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - Result::read_u32
    - symphonia_core::errors::unsupported_error
    - Result::read_buf_exact
    - Result::read_u8
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_ident_header<B: ReadBytes>(reader: &mut B) -> Result<IdentHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:492,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:495,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:500,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:503,1
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:507,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:507,1
    - Dst: read_codebooks
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:510,1
    - Dst: read_time_domain_transforms
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:513,1
    - Dst: read_floors
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:516,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:516,1
    - Dst: read_residues
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:519,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:519,1
    - Dst: read_mappings
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:523,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:523,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:523,1
    - Dst: read_modes
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:526,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:526,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:529,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:530,1
    - Dst: i32::bits_left
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:533,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:537,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 78
    argCount: 2
    argNames:
    - reader
    - ident
    argTypes:
    - '&mut BufReader<''_>'
    - '&IdentHeader'
    constantsTouched: []
    func_position:
      end: 538
      start: 490
    functionDepth: 14
    functionLinenumber: 490
    functionLinenumberEnd: 538
    functionName: read_setup
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 5
    functionsReached:
    - read_codebooks
    - Result::read_buf_bytes_available_ref
    - Result::read_buf_exact
    - Result::read_u8
    - read_floors
    - read_modes
    - BitReaderRtl::new
    - read_mappings
    - i32::read_bool
    - read_residues
    - i32::bits_left
    - read_time_domain_transforms
    - Ok
    - symphonia_core::errors::decode_error
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'fn read_setup(reader: &mut BufReader<''_>, ident: &IdentHeader) ->
      Result<Setup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:419,1
    - Dst: skip_codebook
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:421,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:423,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 424
      start: 418
    functionDepth: 16
    functionLinenumber: 418
    functionLinenumberEnd: 424
    functionName: skip_codebooks
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - skip_codebook
    linkageType: ''
    returnType: Result
    signature: 'fn skip_codebooks(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:428,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:431,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:435,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:436,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:437,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:441,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:446,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:447,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:452,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:458,1
    - Dst: ilog
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:462,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:464,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:469,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:479,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:484,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:485,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:486,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:487,1
    - Dst: lookup1_values
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:491,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:492,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:497,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:499,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:502,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 101
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 503
      start: 426
    functionDepth: 16
    functionLinenumber: 426
    functionLinenumberEnd: 503
    functionName: skip_codebook
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 1
    functionsReached:
    - i32::ignore_bits
    - lookup1_values
    - i32::read_bits_leq32
    - ilog
    - i32::read_bool
    - Ok
    - symphonia_core::errors::decode_error
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'pub fn skip_codebook(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:506,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:510,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:511,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:515,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 516
      start: 505
    functionDepth: 16
    functionLinenumber: 505
    functionLinenumberEnd: 516
    functionName: skip_time_domain_transforms
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn skip_time_domain_transforms(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:519,1
    - Dst: skip_floor
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:521,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:523,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 524
      start: 518
    functionDepth: 16
    functionLinenumber: 518
    functionLinenumberEnd: 524
    functionName: skip_floors
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - skip_floor
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn skip_floors(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:527,1
    - Dst: skip_floor0_setup
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:530,1
    - Dst: skip_floor1_setup
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:531,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:532,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 534
      start: 526
    functionDepth: 16
    functionLinenumber: 526
    functionLinenumberEnd: 534
    functionName: skip_floor
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - symphonia_core::errors::decode_error
    - skip_floor0_setup
    - skip_floor1_setup
    linkageType: ''
    returnType: Result
    signature: 'fn skip_floor(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:542,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:543,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:544,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:545,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 546
      start: 536
    functionDepth: 16
    functionLinenumber: 536
    functionLinenumberEnd: 546
    functionName: skip_floor0_setup
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - i32::ignore_bits
    linkageType: ''
    returnType: Result
    signature: 'fn skip_floor0_setup(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:550,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:561,1
    - Dst: max
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:562,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:565,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:567,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:568,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:570,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:573,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:579,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:583,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:585,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:588,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:590,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:593,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 78
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 594
      start: 548
    functionDepth: 16
    functionLinenumber: 548
    functionLinenumberEnd: 594
    functionName: skip_floor1_setup
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - i32::ignore_bits
    - i32::read_bits_leq32
    - iter_mut
    - max
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn skip_floor1_setup(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:597,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:599,1
    - Dst: skip_residue_setup
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:600,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:602,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 603
      start: 596
    functionDepth: 16
    functionLinenumber: 596
    functionLinenumberEnd: 603
    functionName: skip_residues
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - skip_residue_setup
    linkageType: ''
    returnType: Result
    signature: 'fn skip_residues(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:609,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:610,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:613,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:618,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:619,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:619,1
    - Dst: bool::count_ones
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:621,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:624,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:626,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 627
      start: 605
    functionDepth: 16
    functionLinenumber: 605
    functionLinenumberEnd: 627
    functionName: skip_residue_setup
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 1
    functionsReached:
    - i32::ignore_bits
    - i32::read_bits_leq32
    - i32::read_bool
    - bool::count_ones
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn skip_residue_setup(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:630,1
    - Dst: skip_mapping
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:632,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:634,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - audio_channels
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 635
      start: 629
    functionDepth: 16
    functionLinenumber: 629
    functionLinenumberEnd: 635
    functionName: skip_mappings
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 0
    functionsReached:
    - i32::read_bits_leq32
    - skip_mapping
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn skip_mappings(bs: &mut BitReaderRtl<''_>, audio_channels: u8) ->
      Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:638,1
    - Dst: skip_mapping_type0_setup
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:641,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:642,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - audio_channels
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 644
      start: 637
    functionDepth: 16
    functionLinenumber: 637
    functionLinenumberEnd: 644
    functionName: skip_mapping
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - symphonia_core::errors::decode_error
    - skip_mapping_type0_setup
    linkageType: ''
    returnType: Result
    signature: 'fn skip_mapping(bs: &mut BitReaderRtl<''_>, audio_channels: u8) ->
      Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:647,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:647,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:649,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:651,1
    - Dst: ilog
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:657,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:657,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:662,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:663,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:667,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:668,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:675,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:675,1
    - Dst: i32::ignore_bits
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:679,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs:681,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 59
    argCount: 2
    argNames:
    - bs
    - audio_channels
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 682
      start: 646
    functionDepth: 16
    functionLinenumber: 646
    functionLinenumberEnd: 682
    functionName: skip_mapping_type0_setup
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
    functionUses: 1
    functionsReached:
    - i32::ignore_bits
    - i32::read_bits_leq32
    - ilog
    - i32::read_bool
    - Ok
    - symphonia_core::errors::decode_error
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn skip_mapping_type0_setup(bs: &mut BitReaderRtl<''_>, audio_channels:
      u8) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:622,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:623,1
    - Dst: read_mode
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:623,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - max_mapping
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 624
      start: 621
    functionDepth: 16
    functionLinenumber: 621
    functionLinenumberEnd: 624
    functionName: read_modes
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - collect
    - map
    - read_mode
    linkageType: ''
    returnType: Result
    signature: 'fn read_modes(bs: &mut BitReaderRtl<''_>, max_mapping: u8) -> Result<Vec<Mode>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:742,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:743,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:744,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:745,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:749,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:754,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:759,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:764,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 2
    argNames:
    - bs
    - max_mapping
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 765
      start: 741
    functionDepth: 16
    functionLinenumber: 741
    functionLinenumberEnd: 765
    functionName: read_mode
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - i32::read_bool
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_mode(bs: &mut BitReaderRtl<''_>, max_mapping: u8) -> Result<Mode>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::leading_zeros
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:14,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 15
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 15
    functionName: ilog
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/common.rs
    functionUses: 8
    functionsReached:
    - Option::leading_zeros
    linkageType: ''
    returnType: u32
    signature: 'pub fn ilog(x: u32) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: powf
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:43,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:43,1
    - Dst: floor
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - entries
    - dimensions
    argTypes:
    - u32
    - u16
    constantsTouched: []
    func_position:
      end: 48
      start: 34
    functionDepth: 17
    functionLinenumber: 34
    functionLinenumberEnd: 48
    functionName: lookup1_values
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 2
    functionsReached:
    - floor
    - f32::from
    - powf
    linkageType: ''
    returnType: u32
    signature: 'fn lookup1_values(entries: u32, dimensions: u16) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - absgp
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: Mapper::absgp_to_ts
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached:
    - Timestamp::from
    linkageType: ''
    returnType: Timestamp
    signature: 'fn absgp_to_ts(&self, absgp: u64) -> Timestamp'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Duration::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: Mapper::max_rap_period
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached:
    - Duration::new
    linkageType: ''
    returnType: Duration
    signature: fn max_rap_period(&self) -> Duration
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: Mapper::is_ready
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_ready(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:86,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:86,1
    - Dst: NullMapper::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 10
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: make_null_mapper
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached:
    - NullMapper::new
    - Box::new
    - Some
    linkageType: ''
    returnType: Option
    signature: fn make_null_mapper() -> Option<Box<dyn Mapper>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Track::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: NullMapper::new
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 1
    functionsReached:
    - Track::new
    linkageType: ''
    returnType: Self
    signature: fn new() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: NullMapper::name
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&''static str'
    signature: fn name(&self) -> &'static str
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: NullMapper::track
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&Track'
    signature: fn track(&self) -> &Track
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: NullMapper::track_mut
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&mut Track'
    signature: fn track_mut(&mut self) -> &mut Track
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: NullMapper::reset
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:117,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 10
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: NullMapper::make_parser
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached:
    - Box::new
    - Some
    linkageType: ''
    returnType: Option
    signature: fn make_parser(&self) -> Option<Box<dyn PacketParser>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: NullMapper::map_packet
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn map_packet(&mut self, _: &[u8]) -> Result<MapResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: NullPacketParser::parse_next_packet_dur
    functionSourceFile: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: (Duration, Duration)
    signature: 'fn parse_next_packet_dur(&mut self, _: &[u8]) -> (Duration, Duration)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: default::get_codecs
    functionSourceFile: /src/symphonia/symphonia/src/lib.rs
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: '&''static CodecRegistry'
    signature: pub fn get_codecs() -> &'static CodecRegistry
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: default::get_probe
    functionSourceFile: /src/symphonia/symphonia/src/lib.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: '&''static Probe'
    signature: pub fn get_probe() -> &'static Probe
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: register_audio_decoder::<codecs::AacDecoder>
      Src: /src/symphonia/symphonia/src/lib.rs:236,1
    - Dst: register_audio_decoder::<codecs::AdpcmDecoder>
      Src: /src/symphonia/symphonia/src/lib.rs:239,1
    - Dst: register_audio_decoder::<codecs::AlacDecoder>
      Src: /src/symphonia/symphonia/src/lib.rs:242,1
    - Dst: register_audio_decoder::<codecs::FlacDecoder>
      Src: /src/symphonia/symphonia/src/lib.rs:245,1
    - Dst: register_audio_decoder::<codecs::MpaDecoder>
      Src: /src/symphonia/symphonia/src/lib.rs:248,1
    - Dst: register_audio_decoder::<codecs::PcmDecoder>
      Src: /src/symphonia/symphonia/src/lib.rs:251,1
    - Dst: register_audio_decoder::<codecs::VorbisDecoder>
      Src: /src/symphonia/symphonia/src/lib.rs:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 1
    argNames:
    - registry
    argTypes:
    - '&mut CodecRegistry'
    constantsTouched: []
    func_position:
      end: 255
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 255
    functionName: default::register_enabled_codecs
    functionSourceFile: /src/symphonia/symphonia/src/lib.rs
    functionUses: 0
    functionsReached:
    - register_audio_decoder::<codecs::AacDecoder>
    - register_audio_decoder::<codecs::PcmDecoder>
    - register_audio_decoder::<codecs::AlacDecoder>
    - register_audio_decoder::<codecs::FlacDecoder>
    - register_audio_decoder::<codecs::AdpcmDecoder>
    - register_audio_decoder::<codecs::MpaDecoder>
    - register_audio_decoder::<codecs::VorbisDecoder>
    linkageType: ''
    returnType: void
    signature: 'pub fn register_enabled_codecs(registry: &mut CodecRegistry)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: register_format::<formats::AdtsReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:265,1
    - Dst: register_format::<formats::CafReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:268,1
    - Dst: register_format::<formats::FlacReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:271,1
    - Dst: register_format::<formats::IsoMp4Reader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:274,1
    - Dst: register_format::<formats::MpaReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:277,1
    - Dst: register_format::<formats::AiffReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:280,1
    - Dst: register_format::<formats::WavReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:283,1
    - Dst: register_format::<formats::OggReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:286,1
    - Dst: register_format::<formats::MkvReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:289,1
    - Dst: register_metadata::<meta::ApeReader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:293,1
    - Dst: register_metadata::<meta::Id3v1Reader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:296,1
    - Dst: register_metadata::<meta::Id3v2Reader<'_>>
      Src: /src/symphonia/symphonia/src/lib.rs:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 36
    argCount: 1
    argNames:
    - probe
    argTypes:
    - '&mut Probe'
    constantsTouched: []
    func_position:
      end: 300
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 300
    functionName: default::register_enabled_formats
    functionSourceFile: /src/symphonia/symphonia/src/lib.rs
    functionUses: 0
    functionsReached:
    - register_format::<formats::OggReader<'_>>
    - register_format::<formats::FlacReader<'_>>
    - register_metadata::<meta::Id3v2Reader<'_>>
    - register_format::<formats::AdtsReader<'_>>
    - register_format::<formats::WavReader<'_>>
    - register_format::<formats::CafReader<'_>>
    - register_metadata::<meta::Id3v1Reader<'_>>
    - register_metadata::<meta::ApeReader<'_>>
    - register_format::<formats::MkvReader<'_>>
    - register_format::<formats::AiffReader<'_>>
    - register_format::<formats::MpaReader<'_>>
    - register_format::<formats::IsoMp4Reader<'_>>
    linkageType: ''
    returnType: void
    signature: 'pub fn register_enabled_formats(probe: &mut Probe)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::io::Cursor::new
      Src: /src/symphonia/symphonia/fuzz/src/demuxer.rs:7,1
    - Dst: MediaSourceStream::new
      Src: /src/symphonia/symphonia/fuzz/src/demuxer.rs:8,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia/fuzz/src/demuxer.rs:8,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia/fuzz/src/demuxer.rs:8,1
    - Dst: FormatOptions::default
      Src: /src/symphonia/symphonia/fuzz/src/demuxer.rs:10,1
    - Dst: MetadataOptions::default
      Src: /src/symphonia/symphonia/fuzz/src/demuxer.rs:11,1
    - Dst: Result::next_packet
      Src: /src/symphonia/symphonia/fuzz/src/demuxer.rs:15,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 25
      start: 2
    functionDepth: 10
    functionLinenumber: 2
    functionLinenumberEnd: 25
    functionName: fuzz_demuxer
    functionSourceFile: /src/symphonia/symphonia/fuzz/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - MediaSourceStream::new
    - MetadataOptions::default
    - Box::new
    - FormatOptions::default
    - Result::next_packet
    - Default::default
    - std::io::Cursor::new
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: D::try_registry_new
      Src: /src/symphonia/symphonia/fuzz/src/lib.rs:12,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia/fuzz/src/lib.rs:12,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia/fuzz/src/lib.rs:13,1
    - Dst: Option::decode
      Src: /src/symphonia/symphonia/fuzz/src/lib.rs:14,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - params
    - packet_data
    argTypes:
    - '&AudioCodecParameters'
    - Vec<u8>
    constantsTouched: []
    func_position:
      end: 16
      start: 8
    functionDepth: 11
    functionLinenumber: 8
    functionLinenumberEnd: 16
    functionName: fuzz_audio_decoder
    functionSourceFile: /src/symphonia/symphonia/fuzz/src/lib.rs
    functionUses: 0
    functionsReached:
    - Default::default
    - D::try_registry_new
    - Packet::new
    - Option::decode
    linkageType: ''
    returnType: void
    signature: 'pub fn fuzz_audio_decoder<D: RegisterableAudioDecoder>(params: &AudioCodecParameters,packet_data:
      Vec<u8>,)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs:2,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs:3,1
    - Dst: '&mut Self::with_sample_rate'
      Src: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs:3,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs:3,1
    - Dst: fuzz_audio_decoder::<AacDecoder>
      Src: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs:9,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 19
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 19
    functionName: fuzz_target
    functionSourceFile: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs
    functionUses: 0
    functionsReached:
    - fuzz_audio_decoder::<AacDecoder>
    - '&mut Self::with_sample_rate'
    - AudioCodecParameters::new
    - '&mut Self::with_channels'
    - Result::for_codec
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: powi
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:25,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - x
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 27
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 27
    functionName: float32_unpack
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 1
    functionsReached:
    - powi
    linkageType: ''
    returnType: f32
    signature: 'fn float32_unpack(x: u32) -> f32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: chunks_exact_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:62,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:62,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:68,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 7
    argNames:
    - multiplicands
    - min_value
    - delta_value
    - sequence_p
    - codebook_entries
    - codebook_dimensions
    - lookup_values
    argTypes:
    - '&[u16]'
    - f32
    - f32
    - bool
    - u32
    - u16
    - u32
    constantsTouched: []
    func_position:
      end: 82
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 82
    functionName: unpack_vq_lookup_type1
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 1
    functionsReached:
    - chunks_exact_mut
    - enumerate
    - iter_mut
    - f32::from
    linkageType: ''
    returnType: Vec
    signature: 'fn unpack_vq_lookup_type1(multiplicands: &[u16],min_value: f32,delta_value:
      f32,sequence_p: bool,codebook_entries: u32,codebook_dimensions: u16,lookup_values:
      u32,) -> Vec<f32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: chunks_exact_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:96,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:96,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:101,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:101,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:102,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 6
    argNames:
    - multiplicands
    - min_value
    - delta_value
    - sequence_p
    - codebook_entries
    - codebook_dimensions
    argTypes:
    - '&[u16]'
    - f32
    - f32
    - bool
    - u32
    - u16
    constantsTouched: []
    func_position:
      end: 111
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 111
    functionName: unpack_vq_lookup_type2
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 1
    functionsReached:
    - f32::from
    - zip
    - chunks_exact_mut
    - iter_mut
    - enumerate
    linkageType: ''
    returnType: Vec
    signature: 'fn unpack_vq_lookup_type2(multiplicands: &[u16],min_value: f32,delta_value:
      f32,sequence_p: bool,codebook_entries: u32,codebook_dimensions: u16,) -> Vec<f32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:130,1
    - Dst: '&[u8]::iter'
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:134,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:144,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:150,1
    - Dst: rev
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:153,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:185,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:185,1
    - Dst: skip
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:185,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:197,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:203,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:203,1
    - Dst: skip
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:203,1
    - Dst: any
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:203,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:206,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:209,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 97
    argCount: 1
    argNames:
    - code_lens
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 210
      start: 113
    functionDepth: 10
    functionLinenumber: 113
    functionLinenumberEnd: 210
    functionName: synthesize_codewords
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 2
    functionsReached:
    - usize::from
    - '&[u8]::iter'
    - rev
    - skip
    - any
    - enumerate
    - Result::push
    - iter
    - Vec::new
    - iter_mut
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn synthesize_codewords(code_lens: &[u8]) -> Result<Vec<u32>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:221,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:224,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:228,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:229,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:233,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:240,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:243,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:247,1
    - Dst: Vec::<u8>::with_capacity
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:249,1
    - Dst: Vec::<u32>::with_capacity
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:250,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:254,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:259,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:263,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:265,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:266,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:273,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:274,1
    - Dst: extend
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:278,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:284,1
    - Dst: ilog
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:288,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:294,1
    - Dst: extend
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:296,1
    - Dst: std::iter::repeat_n
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:296,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:302,1
    - Dst: extend
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:311,1
    - Dst: len
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:321,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:322,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:323,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:327,1
    - Dst: float32_unpack
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:332,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:332,1
    - Dst: float32_unpack
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:333,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:333,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:334,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:335,1
    - Dst: lookup1_values
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:339,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:340,1
    - Dst: Vec::<u16>::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:344,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:347,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:347,1
    - Dst: unpack_vq_lookup_type1
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:351,1
    - Dst: unpack_vq_lookup_type2
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:360,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:371,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:373,1
    - Dst: synthesize_codewords
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:377,1
    - Dst: CodebookBuilder::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:380,1
    - Dst: Self::bits_per_read
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:383,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:383,1
    - Dst: max
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:383,1
    - Dst: copied
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:383,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:383,1
    - Dst: clamp
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:383,1
    - Dst: make::<Entry32x32>
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:385,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:387,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 203
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 388
      start: 219
    functionDepth: 16
    functionLinenumber: 219
    functionLinenumberEnd: 388
    functionName: VorbisCodebook::read
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 1
    functionsReached:
    - iter
    - CodebookBuilder::new
    - Ok
    - symphonia_core::errors::decode_error
    - unpack_vq_lookup_type2
    - push
    - Vec::<u8>::with_capacity
    - Vec::<u32>::with_capacity
    - lookup1_values
    - float32_unpack
    - ilog
    - i32::read_bool
    - unpack_vq_lookup_type1
    - u32::from
    - len
    - i32::read_bits_leq32
    - Some
    - unwrap_or
    - extend
    - Self::bits_per_read
    - copied
    - make::<Entry32x32>
    - synthesize_codewords
    - clamp
    - std::iter::repeat_n
    - Self::push
    - max
    - Vec::<u16>::new
    linkageType: ''
    returnType: Result
    signature: 'pub fn read<B: ReadBitsRtl>(bs: &mut B) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:393,1
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:393,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 15
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: VorbisCodebook::read_scalar
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached:
    - i32::read_codebook
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_scalar<B: ReadBitsRtl>(&self, bs: &mut B) -> Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_codebook
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:399,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:405,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:408,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 410
      start: 397
    functionDepth: 15
    functionLinenumber: 397
    functionLinenumberEnd: 410
    functionName: VorbisCodebook::read_vq
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached:
    - i32::read_codebook
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_vq<B: ReadBitsRtl>(&self, bs: &mut B) -> Result<&[f32]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 415
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 415
    functionName: VorbisCodebook::dimensions
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: pub fn dimensions(&self) -> u16
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 430
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 430
    functionName: tests::verify_ilog
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_ilog()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::checked_pow
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:440,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:440,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - entries
    - dimensions
    argTypes:
    - u32
    - u16
    constantsTouched: []
    func_position:
      end: 453
      start: 432
    functionDepth: 1
    functionLinenumber: 432
    functionLinenumberEnd: 453
    functionName: tests::naive_lookup1_values
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached:
    - Option::checked_pow
    - u32::from
    linkageType: ''
    returnType: u32
    signature: 'fn naive_lookup1_values(entries: u32, dimensions: u16) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 469
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 469
    functionName: tests::verify_lookup1_values
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_lookup1_values()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: synthesize_codewords
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:475,1
    - Dst: Result::unwrap
      Src: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs:475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 477
      start: 472
    functionDepth: 11
    functionLinenumber: 472
    functionLinenumberEnd: 477
    functionName: tests::verify_synthesize_codewords
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached:
    - synthesize_codewords
    - Result::unwrap
    linkageType: ''
    returnType: void
    signature: fn verify_synthesize_codewords()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 484
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 484
    functionName: tests::verify_synthesize_codewords_overspecified
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_synthesize_codewords_overspecified()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:13,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:17,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:17,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:18,1
    - Dst: sin
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:20,1
    - Dst: powi
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:20,1
    - Dst: sin
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:20,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 1
    argNames:
    - bs
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 24
      start: 11
    functionDepth: 2
    functionLinenumber: 11
    functionLinenumberEnd: 24
    functionName: generate_win_curve
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/window.rs
    functionUses: 1
    functionsReached:
    - powi
    - f64::from
    - sin
    - iter_mut
    - enumerate
    linkageType: ''
    returnType: Vec
    signature: 'fn generate_win_curve(bs: usize) -> Vec<f32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: generate_win_curve
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:35,1
    - Dst: generate_win_curve
      Src: /src/symphonia/symphonia-codec-vorbis/src/window.rs:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - blocksize0
    - blocksize1
    argTypes:
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 3
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: Windows::new
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/window.rs
    functionUses: 1
    functionsReached:
    - generate_win_curve
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(blocksize0: usize, blocksize1: usize) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:7,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:7,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:8,1
    - Dst: Result::into
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:8,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 99
      start: 88
    functionDepth: 14
    functionLinenumber: 88
    functionLinenumberEnd: 99
    functionName: io_try_or_ret
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 2
    functionsReached:
    - Ok
    - Err
    - Result::into
    - Result::kind
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:7,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:7,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:8,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 112
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 112
    functionName: try_or_ret
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 2
    functionsReached:
    - Ok
    - Err
    - Result::kind
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::read_setup
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:155,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:157,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - bs
    - bs0_exp
    - bs1_exp
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 158
      start: 149
    functionDepth: 15
    functionLinenumber: 149
    functionLinenumberEnd: 158
    functionName: Floor0::try_read
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Box::new
    - Self::read_setup
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_read(bs: &mut BitReaderRtl<''_>,bs0_exp: u8,bs1_exp: u8,max_codebook:
      u8,) -> Result<Box<dyn Floor>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:166,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:167,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:168,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:169,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:170,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:171,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:174,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:177,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:180,1
    - Dst: bark_map
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:185,1
    - Dst: bark_map
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:186,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:200,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 56
    argCount: 4
    argNames:
    - bs
    - bs0_exp
    - bs1_exp
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 201
      start: 160
    functionDepth: 16
    functionLinenumber: 160
    functionLinenumberEnd: 201
    functionName: Floor0::read_setup
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - i32::read_bits_leq32
    - bark_map
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_setup(bs: &mut BitReaderRtl<''_>,bs0_exp: u8,bs1_exp: u8,max_codebook:
      u8,) -> Result<Floor0Setup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io_try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:214,1
    - Dst: ilog
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:219,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:219,1
    - Dst: io_try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:220,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:225,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:226,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:232,1
    - Dst: try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:240,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:245,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:245,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:249,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:249,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:259,1
    - Dst: cos
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:260,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:267,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 78
    argCount: 2
    argNames:
    - bs
    - codebooks
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - '&[VorbisCodebook]'
    constantsTouched: []
    func_position:
      end: 268
      start: 205
    functionDepth: 15
    functionLinenumber: 205
    functionLinenumberEnd: 268
    functionName: Floor0::read_channel
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - io_try_or_ret
    - try_or_ret
    - zip
    - ilog
    - cos
    - iter_mut
    - Result::len
    - std::cmp::min
    - Ok
    - symphonia_core::errors::decode_error
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn read_channel(&mut self,bs: &mut BitReaderRtl<''_>,codebooks: &[VorbisCodebook],)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 272
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionName: Floor0::is_unused
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_unused(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:288,1
    - Dst: cos
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:296,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:302,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:302,1
    - Dst: remainder
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:312,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:314,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:326,1
    - Dst: linear_floor0_value
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:329,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:338,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:338,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:352,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 121
    argCount: 2
    argNames:
    - bs_exp
    - floor
    argTypes:
    - u8
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 353
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 353
    functionName: Floor0::synthesis
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - f32::from
    - zip
    - is_empty
    - cos
    - iter_mut
    - linear_floor0_value
    - Ok
    - symphonia_core::errors::decode_error
    - chunks_exact
    - remainder
    linkageType: ''
    returnType: Result
    signature: 'fn synthesis(&mut self, bs_exp: u8, floor: &mut [f32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: atan
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:359,1
    - Dst: atan
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - x
    argTypes:
    - f64
    constantsTouched: []
    func_position:
      end: 360
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 360
    functionName: bark
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - atan
    linkageType: ''
    returnType: f64
    signature: 'fn bark(x: f64) -> f64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:363,1
    - Dst: i32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:365,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:366,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:367,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:369,1
    - Dst: bark
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:369,1
    - Dst: bark
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:373,1
    - Dst: f64::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:373,1
    - Dst: floor
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:373,1
    - Dst: Option::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:374,1
    - Dst: i32::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 3
    argNames:
    - n
    - floor0_rate
    - floor0_bark_map_size
    argTypes:
    - u32
    - u16
    - u16
    constantsTouched: []
    func_position:
      end: 378
      start: 362
    functionDepth: 17
    functionLinenumber: 362
    functionLinenumberEnd: 378
    functionName: bark_map
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - i32::min
    - bark
    - f64::from
    - floor
    - Option::push
    - i32::from
    - Vec::with_capacity
    linkageType: ''
    returnType: Vec
    signature: 'fn bark_map(n: u32, floor0_rate: u16, floor0_bark_map_size: u16) ->
      Vec<i32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::wrapping_mul
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:393,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:393,1
    - Dst: sqrt
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:394,1
    - Dst: f32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:396,1
    - Dst: exp
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 5
    argNames:
    - p
    - q
    - amplitude
    - amplitude_bits
    - amplitude_offset
    argTypes:
    - f32
    - f32
    - u64
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 397
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 397
    functionName: linear_floor0_value
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - f32::from
    - u64::from
    - exp
    - u64::wrapping_mul
    - sqrt
    linkageType: ''
    returnType: f32
    signature: 'fn linear_floor0_value(p: f32,q: f32,amplitude: u64,amplitude_bits:
      u8,amplitude_offset: u8,) -> f32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::read_setup
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:442,1
    - Dst: len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:444,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:446,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:446,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 453
      start: 441
    functionDepth: 15
    functionLinenumber: 441
    functionLinenumberEnd: 453
    functionName: Floor1::try_read
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Box::new
    - len
    - Self::read_setup
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_read(bs: &mut BitReaderRtl<''_>, max_codebook: u8) -> Result<Box<dyn
      Floor>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:457,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:463,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:470,1
    - Dst: max
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:473,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:476,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:478,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:479,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:480,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:483,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:486,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:494,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:494,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:496,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:504,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:513,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:515,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:517,1
    - Dst: HashSet::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:518,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:520,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:521,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:527,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:527,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:528,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:532,1
    - Dst: Self::insert
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:535,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:536,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:539,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:543,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:543,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:544,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:544,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:547,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:548,1
    - Dst: find_neighbors
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:548,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:549,1
    - Dst: sort_by_key
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:553,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:565,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 182
    argCount: 2
    argNames:
    - bs
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 566
      start: 455
    functionDepth: 16
    functionLinenumber: 455
    functionLinenumberEnd: 566
    functionName: Floor1::read_setup
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - push
    - Self::insert
    - HashSet::new
    - i32::read_bits_leq32
    - enumerate
    - Ok
    - Vec::new
    - find_neighbors
    - sort_by_key
    - iter_mut
    - Self::push
    - max
    - Self::len
    - Default::default
    - symphonia_core::errors::decode_error
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn read_setup(bs: &mut BitReaderRtl<''_>, max_codebook: u8) -> Result<Floor1Setup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get_range
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:570,1
    - Dst: len
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:578,1
    - Dst: render_point
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:582,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 105
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 625
      start: 568
    functionDepth: 3
    functionLinenumber: 568
    functionLinenumberEnd: 625
    functionName: Floor1::synthesis_step1
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - render_point
    - get_range
    - len
    linkageType: ''
    returnType: void
    signature: fn synthesis_step1(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clamp
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:635,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:638,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:638,1
    - Dst: clamp
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:640,1
    - Dst: render_line
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:643,1
    - Dst: render_line
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:651,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 56
    argCount: 2
    argNames:
    - n
    - floor
    argTypes:
    - u32
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 653
      start: 627
    functionDepth: 11
    functionLinenumber: 627
    functionLinenumberEnd: 653
    functionName: Floor1::synthesis_step2
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - render_line
    - iter
    - map
    - clamp
    linkageType: ''
    returnType: void
    signature: 'fn synthesis_step2(&mut self, n: u32, floor: &mut [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: io_try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:666,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:669,1
    - Dst: get_range
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:673,1
    - Dst: ilog
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:676,1
    - Dst: io_try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:678,1
    - Dst: io_try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:679,1
    - Dst: try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:695,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:698,1
    - Dst: try_or_ret
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:708,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:721,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 79
    argCount: 2
    argNames:
    - bs
    - codebooks
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - '&[VorbisCodebook]'
    constantsTouched: []
    func_position:
      end: 722
      start: 657
    functionDepth: 15
    functionLinenumber: 657
    functionLinenumberEnd: 722
    functionName: Floor1::read_channel
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached:
    - try_or_ret
    - get_range
    - ilog
    - iter_mut
    - Ok
    - io_try_or_ret
    linkageType: ''
    returnType: Result
    signature: 'fn read_channel(&mut self,bs: &mut BitReaderRtl<''_>,codebooks: &[VorbisCodebook],)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 726
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 726
    functionName: Floor1::is_unused
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: fn is_unused(&self) -> bool
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Floor1::synthesis_step1
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:730,1
    - Dst: Floor1::synthesis_step2
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:731,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - bs_exp
    - floor
    argTypes:
    - u8
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 733
      start: 728
    functionDepth: 12
    functionLinenumber: 728
    functionLinenumberEnd: 733
    functionName: Floor1::synthesis
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 0
    functionsReached:
    - Floor1::synthesis_step2
    - Floor1::synthesis_step1
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn synthesis(&mut self, bs_exp: u8, floor: &mut [f32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - multiplier
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 745
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 745
    functionName: get_range
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: 'fn get_range(multiplier: u8) -> u32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:757,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:757,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - vec
    - x
    argTypes:
    - '&[u32]'
    - usize
    constantsTouched: []
    func_position:
      end: 773
      start: 748
    functionDepth: 11
    functionLinenumber: 748
    functionLinenumberEnd: 773
    functionName: find_neighbors
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - enumerate
    - iter
    linkageType: ''
    returnType: (usize, usize)
    signature: 'fn find_neighbors(vec: &[u32], x: usize) -> (usize, usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::unsigned_abs
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 5
    argNames:
    - x0
    - y0
    - x1
    - y1
    - x
    argTypes:
    - u32
    - i32
    - u32
    - i32
    - u32
    constantsTouched: []
    func_position:
      end: 782
      start: 776
    functionDepth: 2
    functionLinenumber: 776
    functionLinenumberEnd: 782
    functionName: render_point
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - Result::unsigned_abs
    linkageType: ''
    returnType: i32
    signature: 'fn render_point(x0: u32, y0: i32, x1: u32, y1: i32, x: u32) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::abs
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:799,1
    - Dst: Option::abs
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:799,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:806,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/floor.rs:812,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 52
    argCount: 6
    argNames:
    - x0
    - y0
    - x1
    - y1
    - n
    - v
    argTypes:
    - u32
    - i32
    - u32
    - i32
    - usize
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 825
      start: 785
    functionDepth: 2
    functionLinenumber: 785
    functionLinenumberEnd: 825
    functionName: render_line
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
    functionUses: 1
    functionsReached:
    - Option::abs
    - iter_mut
    - std::cmp::min
    - Result::abs
    linkageType: ''
    returnType: void
    signature: 'fn render_line(x0: u32, y0: i32, x1: u32, y1: i32, n: usize, v: &mut
      [f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: trailing_zeros
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:34,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 47
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 47
    functionName: BitSetIterator::next
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/common.rs
    functionUses: 0
    functionsReached:
    - Some
    - trailing_zeros
    linkageType: ''
    returnType: Option
    signature: fn next(&mut self) -> Option<Self::Item>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: decl_bitset::is_set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:11,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 92
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 92
    functionName: decl_bitset
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/common.rs
    functionUses: 0
    functionsReached:
    - decl_bitset::is_set
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:102,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:104,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:105,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:106,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:107,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:108,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:109,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:110,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:111,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:112,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:113,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:114,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 118
      start: 101
    functionDepth: 15
    functionLinenumber: 101
    functionLinenumberEnd: 118
    functionName: tests::verify_bitset_count
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/common.rs
    functionUses: 0
    functionsReached:
    - set
    - Default::default
    linkageType: ''
    returnType: void
    signature: fn verify_bitset_count()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:122,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:126,1
    - Dst: next
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:126,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:130,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:131,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:132,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:133,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:134,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:135,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:136,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:137,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:138,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:139,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:140,1
    - Dst: set
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:141,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/common.rs:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 157
      start: 121
    functionDepth: 10
    functionLinenumber: 121
    functionLinenumberEnd: 157
    functionName: tests::verify_bitset_iter
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/common.rs
    functionUses: 0
    functionsReached:
    - set
    - Default::default
    - next
    - iter
    linkageType: ''
    returnType: void
    signature: fn verify_bitset_iter()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 32
      start: 26
    functionDepth: 13
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionName: Dsp::reset
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs
    functionUses: 0
    functionsReached:
    - reset
    linkageType: ''
    returnType: void
    signature: pub fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - bs0_exp
    - bs1_exp
    argTypes:
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 66
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 66
    functionName: DspChannel::new
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(bs0_exp: u8, bs1_exp: u8) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: imdct
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:80,1
    - Dst: overlap_add
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:89,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:97,1
    - Dst: overlap_add
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:100,1
    - Dst: overlap_add
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:113,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:121,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:125,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 121
    argCount: 5
    argNames:
    - block_flag
    - prev_block_flag
    - windows
    - imdct
    - buf
    argTypes:
    - bool
    - bool
    - '&Windows'
    - '&mut Imdct'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 126
      start: 68
    functionDepth: 12
    functionLinenumber: 68
    functionLinenumberEnd: 126
    functionName: DspChannel::synth
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs
    functionUses: 0
    functionsReached:
    - copy_from_slice
    - imdct
    - overlap_add
    linkageType: ''
    returnType: void
    signature: 'pub fn synth(&mut self,block_flag: bool,prev_block_flag: bool,windows:
      &Windows,imdct: &mut Imdct,buf: &mut [f32],)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: DspChannel::reset
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs
    functionUses: 0
    functionsReached:
    - fill
    linkageType: ''
    returnType: void
    signature: pub fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:140,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:140,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:140,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:140,1
    - Dst: rev
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:140,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:140,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 4
    argNames:
    - out
    - left
    - right
    - win
    argTypes:
    - '&mut [f32]'
    - '&[f32]'
    - '&[f32]'
    - '&[f32]'
    constantsTouched: []
    func_position:
      end: 145
      start: 135
    functionDepth: 11
    functionLinenumber: 135
    functionLinenumberEnd: 145
    functionName: overlap_add
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs
    functionUses: 1
    functionsReached:
    - zip
    - rev
    - Result::iter
    - iter
    linkageType: ''
    returnType: void
    signature: 'fn overlap_add(out: &mut [f32], left: &[f32], right: &[f32], win:
      &[f32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:76,1
    - Dst: unpack_xiph_laced_extradata
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:78,1
    - Dst: read_ident_header
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:79,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:79,1
    - Dst: read_setup
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:80,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:80,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:81,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:84,1
    - Dst: read_ident_header
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:85,1
    - Dst: read_setup
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:86,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:87,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 89
      start: 75
    functionDepth: 12
    functionLinenumber: 75
    functionLinenumberEnd: 89
    functionName: read_extradata
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - read_setup
    - Result::is_empty
    - read_ident_header
    - BufReader::new
    - unpack_xiph_laced_extradata
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read_extradata(buf: &[u8]) -> Result<(IdentHeader, Setup)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:95,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:99,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:101,1
    - Dst: read_extradata
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:105,1
    - Dst: Windows::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:108,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:112,1
    - Dst: DspChannel::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:112,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:112,1
    - Dst: vorbis_channels_to_channels
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:115,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:117,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:121,1
    - Dst: Imdct::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:123,1
    - Dst: Imdct::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:124,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:132,1
    - Dst: clone
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:134,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:142,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 62
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 144
      start: 92
    functionDepth: 13
    functionLinenumber: 92
    functionLinenumberEnd: 144
    functionName: VorbisDecoder::try_new
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - DspChannel::new
    - Windows::new
    - Imdct::new
    - symphonia_core::errors::unsupported_error
    - vorbis_channels_to_channels
    - as_ref
    - AudioBuffer::new
    - map
    - collect
    - read_extradata
    - Ok
    - AudioSpec::new
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(params: &AudioCodecParameters, opts: &AudioDecoderOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BitReaderRtl::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:147,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:152,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:153,1
    - Dst: len
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:156,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:158,1
    - Dst: common::ilog
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:158,1
    - Dst: len
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:160,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:161,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:165,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:170,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:171,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:189,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:189,1
    - Dst: Result::read_channel
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:194,1
    - Dst: Result::is_unused
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:196,1
    - Dst: Result::synthesis
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:202,1
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:206,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:216,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:217,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:229,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:229,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:230,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:233,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:233,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:234,1
    - Dst: Result::set
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:235,1
    - Dst: Result::read_residue
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:241,1
    - Dst: iter
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:252,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:258,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:263,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:267,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:267,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:282,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:289,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:289,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:295,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:300,1
    - Dst: render_uninit
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:305,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:305,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:308,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:308,1
    - Dst: map_vorbis_channel
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:309,1
    - Dst: plane_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:310,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:312,1
    - Dst: synth
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:314,1
    - Dst: is_none
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:319,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:321,1
    - Dst: trim
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:324,1
    - Dst: get
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:324,1
    - Dst: get
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:324,1
    - Dst: Some
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:329,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:331,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 368
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 332
      start: 146
    functionDepth: 16
    functionLinenumber: 146
    functionLinenumberEnd: 332
    functionName: VorbisDecoder::decode_inner
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - split_at_mut
    - Result::is_unused
    - get
    - iter
    - common::ilog
    - iter_mut
    - Ok
    - symphonia_core::errors::decode_error
    - trim
    - Result::read_channel
    - fill
    - i32::read_bool
    - synth
    - clear
    - enumerate
    - plane_mut
    - len
    - i32::read_bits_leq32
    - zip
    - Result::set
    - Some
    - Default::default
    - unwrap_or
    - usize::from
    - Result::read_residue
    - render_uninit
    - BitReaderRtl::new
    - map_vorbis_channel
    - Result::synthesis
    - is_none
    linkageType: ''
    returnType: Result
    signature: 'fn decode_inner(&mut self, packet: &PacketRef<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 338
      start: 336
    functionDepth: 13
    functionLinenumber: 336
    functionLinenumberEnd: 338
    functionName: VorbisDecoder::reset
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached:
    - reset
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::supported_codecs
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:342,1
    - Dst: '&''static [SupportedAudioCodec]::first'
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:342,1
    - Dst: expect
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 343
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 343
    functionName: VorbisDecoder::codec_info
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached:
    - '&''static [SupportedAudioCodec]::first'
    - expect
    - Self::supported_codecs
    linkageType: ''
    returnType: '&CodecInfo'
    signature: fn codec_info(&self) -> &CodecInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 347
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionName: VorbisDecoder::codec_params
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioCodecParameters'
    signature: fn codec_params(&self) -> &AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: VorbisDecoder::decode_inner
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:350,1
    - Dst: clear
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:351,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:352,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:355,1
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 357
      start: 349
    functionDepth: 17
    functionLinenumber: 349
    functionLinenumberEnd: 357
    functionName: VorbisDecoder::decode_ref
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached:
    - Ok
    - as_generic_audio_buffer_ref
    - VorbisDecoder::decode_inner
    - Err
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ref(&mut self, packet: &PacketRef<''_>) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:360,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 361
      start: 359
    functionDepth: 15
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionName: VorbisDecoder::finalize
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached:
    - Default::default
    linkageType: ''
    returnType: FinalizeResult
    signature: fn finalize(&mut self) -> FinalizeResult
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 365
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionName: VorbisDecoder::last_decoded
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn last_decoded(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:376,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:376,1
    - Dst: VorbisDecoder::try_new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 377
      start: 369
    functionDepth: 10
    functionLinenumber: 369
    functionLinenumberEnd: 377
    functionName: VorbisDecoder::try_registry_new
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached:
    - VorbisDecoder::try_new
    - Ok
    - Box::new
    linkageType: ''
    returnType: Result
    signature: 'fn try_registry_new(params: &AudioCodecParameters,opts: &AudioDecoderOptions,)
      -> Result<Box<dyn AudioDecoder>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 381
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 381
    functionName: VorbisDecoder::supported_codecs
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_audio_codec
    linkageType: ''
    returnType: '&''static [SupportedAudioCodec]'
    signature: fn supported_codecs() -> &'static [SupportedAudioCodec]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:541,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:542,1
    - Dst: VorbisCodebook::read
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:542,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:542,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 543
      start: 540
    functionDepth: 16
    functionLinenumber: 540
    functionLinenumberEnd: 543
    functionName: read_codebooks
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - VorbisCodebook::read
    - map
    - collect
    linkageType: ''
    returnType: Result
    signature: 'fn read_codebooks(bs: &mut BitReaderRtl<''_>) -> Result<Vec<VorbisCodebook>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:546,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:550,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:551,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - bs
    argTypes:
    - '&mut BitReaderRtl<''_>'
    constantsTouched: []
    func_position:
      end: 556
      start: 545
    functionDepth: 16
    functionLinenumber: 545
    functionLinenumberEnd: 556
    functionName: read_time_domain_transforms
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_time_domain_transforms(bs: &mut BitReaderRtl<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:564,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:565,1
    - Dst: read_floor
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:565,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:565,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - bs
    - bs0_exp
    - bs1_exp
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 566
      start: 558
    functionDepth: 16
    functionLinenumber: 558
    functionLinenumberEnd: 566
    functionName: read_floors
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - collect
    - map
    - read_floor
    linkageType: ''
    returnType: Result
    signature: 'fn read_floors(bs: &mut BitReaderRtl<''_>,bs0_exp: u8,bs1_exp: u8,max_codebook:
      u8,) -> Result<Vec<Box<dyn Floor>>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:574,1
    - Dst: Floor0::try_read
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:577,1
    - Dst: Floor1::try_read
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:578,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:579,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - bs
    - bs0_exp
    - bs1_exp
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 581
      start: 568
    functionDepth: 16
    functionLinenumber: 568
    functionLinenumberEnd: 581
    functionName: read_floor
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Floor1::try_read
    - Floor0::try_read
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_floor(bs: &mut BitReaderRtl<''_>,bs0_exp: u8,bs1_exp: u8,max_codebook:
      u8,) -> Result<Box<dyn Floor>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:584,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:585,1
    - Dst: read_residue
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:585,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 586
      start: 583
    functionDepth: 16
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionName: read_residues
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - read_residue
    - map
    - collect
    linkageType: ''
    returnType: Result
    signature: 'fn read_residues(bs: &mut BitReaderRtl<''_>, max_codebook: u8) ->
      Result<Vec<Residue>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:589,1
    - Dst: Residue::try_read
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:592,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:593,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    constantsTouched: []
    func_position:
      end: 595
      start: 588
    functionDepth: 16
    functionLinenumber: 588
    functionLinenumberEnd: 595
    functionName: read_residue
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 2
    functionsReached:
    - i32::read_bits_leq32
    - Residue::try_read
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_residue(bs: &mut BitReaderRtl<''_>, max_codebook: u8) -> Result<Residue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:603,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:604,1
    - Dst: read_mapping
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:604,1
    - Dst: collect
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:604,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - bs
    - audio_channels
    - max_floor
    - max_residue
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 605
      start: 597
    functionDepth: 16
    functionLinenumber: 597
    functionLinenumberEnd: 605
    functionName: read_mappings
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - read_mapping
    - map
    - collect
    linkageType: ''
    returnType: Result
    signature: 'fn read_mappings(bs: &mut BitReaderRtl<''_>,audio_channels: u8,max_floor:
      u8,max_residue: u8,) -> Result<Vec<Mapping>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:613,1
    - Dst: read_mapping_type0
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:616,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:617,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - bs
    - audio_channels
    - max_floor
    - max_residue
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 619
      start: 607
    functionDepth: 16
    functionLinenumber: 607
    functionLinenumberEnd: 619
    functionName: read_mapping
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - symphonia_core::errors::decode_error
    - read_mapping_type0
    linkageType: ''
    returnType: Result
    signature: 'fn read_mapping(bs: &mut BitReaderRtl<''_>,audio_channels: u8,max_floor:
      u8,max_residue: u8,) -> Result<Mapping>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:651,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:651,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:653,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:655,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:657,1
    - Dst: Self::reserve_exact
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:660,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:660,1
    - Dst: ilog
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:666,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:666,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:671,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:672,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:677,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:680,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:684,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:685,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:688,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:688,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:694,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:697,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:700,1
    - Dst: resize
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:704,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:704,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:707,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:707,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:711,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:714,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:717,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:721,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:724,1
    - Dst: push
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:727,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:732,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 121
    argCount: 4
    argNames:
    - bs
    - audio_channels
    - max_floor
    - max_residue
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - u8
    - u8
    constantsTouched: []
    func_position:
      end: 733
      start: 645
    functionDepth: 16
    functionLinenumber: 645
    functionLinenumberEnd: 733
    functionName: read_mapping_type0
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - push
    - i32::read_bits_leq32
    - Self::reserve_exact
    - Vec::new
    - ilog
    - i32::read_bool
    - Self::push
    - Ok
    - symphonia_core::errors::decode_error
    - resize
    - Vec::with_capacity
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn read_mapping_type0(bs: &mut BitReaderRtl<''_>,audio_channels: u8,max_floor:
      u8,max_residue: u8,) -> Result<Mapping>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/lib.rs:787,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 2
    argNames:
    - num_channels
    - ch
    argTypes:
    - u8
    - usize
    constantsTouched: []
    func_position:
      end: 788
      start: 771
    functionDepth: 1
    functionLinenumber: 771
    functionLinenumberEnd: 788
    functionName: map_vorbis_channel
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
    functionUses: 1
    functionsReached:
    - usize::from
    linkageType: ''
    returnType: usize
    signature: 'fn map_vorbis_channel(num_channels: u8, ch: usize) -> usize'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - pass
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: ResidueVqClass::is_used
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: 'fn is_used(&self, pass: usize) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::read_setup
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:68,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:70,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:70,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - bs
    - residue_type
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u16
    - u8
    constantsTouched: []
    func_position:
      end: 71
      start: 63
    functionDepth: 15
    functionLinenumber: 63
    functionLinenumberEnd: 71
    functionName: Residue::try_read
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 1
    functionsReached:
    - Ok
    - Default::default
    - Self::read_setup
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_read(bs: &mut BitReaderRtl<''_>,residue_type: u16,max_codebook:
      u8,) -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:78,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:79,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:80,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:81,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:82,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:85,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:89,1
    - Dst: Vec::<ResidueVqClass>::new
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:92,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:95,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:97,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:97,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:101,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:109,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:109,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:115,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:120,1
    - Dst: max
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:123,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:139,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 95
    argCount: 3
    argNames:
    - bs
    - residue_type
    - max_codebook
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u16
    - u8
    constantsTouched: []
    func_position:
      end: 140
      start: 73
    functionDepth: 16
    functionLinenumber: 73
    functionLinenumberEnd: 140
    functionName: Residue::read_setup
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 0
    functionsReached:
    - Vec::<ResidueVqClass>::new
    - i32::read_bits_leq32
    - enumerate
    - i32::read_bool
    - iter_mut
    - Self::push
    - max
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_setup(bs: &mut BitReaderRtl<''_>,residue_type: u16,max_codebook:
      u8,) -> Result<ResidueSetup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Residue::read_residue_inner_type_2
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:151,1
    - Dst: Residue::read_residue_inner_type_0_1
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:154,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:162,1
    - Dst: Err
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:163,1
    - Dst: Residue::deinterleave_2
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:170,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:173,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 5
    argNames:
    - bs
    - bs_exp
    - codebooks
    - residue_channels
    - channels
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - '&[VorbisCodebook]'
    - '&BitSet256'
    - '&mut [DspChannel]'
    constantsTouched: []
    func_position:
      end: 174
      start: 142
    functionDepth: 11
    functionLinenumber: 142
    functionLinenumberEnd: 174
    functionName: Residue::read_residue
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 0
    functionsReached:
    - Residue::read_residue_inner_type_0_1
    - Residue::deinterleave_2
    - Err
    - Ok
    - Residue::read_residue_inner_type_2
    - Result::kind
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_residue(&mut self,bs: &mut BitReaderRtl<''_>,bs_exp: u8,codebooks:
      &[VorbisCodebook],residue_channels: &BitSet256,channels: &mut [DspChannel],)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&BitSet256::count'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:178,1
    - Dst: '&BitSet256::iter'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:182,1
    - Dst: next
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:185,1
    - Dst: Result::expect
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:185,1
    - Dst: next
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:186,1
    - Dst: Result::expect
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:186,1
    - Dst: Option::split_at_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:189,1
    - Dst: split_at_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:189,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:195,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:195,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:198,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:195,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:199,1
    - Dst: '&BitSet256::iter'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:207,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:207,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:210,1
    - Dst: map
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:210,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:212,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 72
    argCount: 2
    argNames:
    - residue_channels
    - channels
    argTypes:
    - '&BitSet256'
    - '&mut [DspChannel]'
    constantsTouched: []
    func_position:
      end: 218
      start: 177
    functionDepth: 10
    functionLinenumber: 177
    functionLinenumberEnd: 218
    functionName: Residue::deinterleave_2
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 1
    functionsReached:
    - split_at_mut
    - next
    - zip
    - '&BitSet256::count'
    - Result::expect
    - Option::split_at_mut
    - map
    - iter_mut
    - '&BitSet256::iter'
    - enumerate
    - chunks_exact
    linkageType: ''
    returnType: void
    signature: 'fn deinterleave_2(&mut self, residue_channels: &BitSet256, channels:
      &mut [DspChannel])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&BitSet256::count'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:232,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:235,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:236,1
    - Dst: dimensions
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:242,1
    - Dst: Residue::prepare_partition_classes
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:248,1
    - Dst: Residue::prepare_type_2_format_buffer
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:251,1
    - Dst: '&BitSet256::iter'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:255,1
    - Dst: fold
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:255,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:258,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:267,1
    - Dst: read_scalar
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:271,1
    - Dst: decode_classes
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:273,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:283,1
    - Dst: is_used
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:289,1
    - Dst: read_residue_partition_format1
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:295,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:307,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 114
    argCount: 5
    argNames:
    - bs
    - bs_exp
    - codebooks
    - residue_channels
    - channels
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - '&[VorbisCodebook]'
    - '&BitSet256'
    - '&mut [DspChannel]'
    constantsTouched: []
    func_position:
      end: 308
      start: 220
    functionDepth: 10
    functionLinenumber: 220
    functionLinenumberEnd: 308
    functionName: Residue::read_residue_inner_type_2
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 1
    functionsReached:
    - Residue::prepare_type_2_format_buffer
    - read_residue_partition_format1
    - Ok
    - decode_classes
    - '&BitSet256::count'
    - is_used
    - step_by
    - std::cmp::min
    - dimensions
    - read_scalar
    - Residue::prepare_partition_classes
    - '&BitSet256::iter'
    - fold
    linkageType: ''
    returnType: Result
    signature: 'fn read_residue_inner_type_2(&mut self,bs: &mut BitReaderRtl<''_>,bs_exp:
      u8,codebooks: &[VorbisCodebook],residue_channels: &BitSet256,channels: &mut
      [DspChannel],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:325,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:326,1
    - Dst: dimensions
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:332,1
    - Dst: Residue::prepare_partition_classes
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:338,1
    - Dst: '&BitSet256::count'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:338,1
    - Dst: '&BitSet256::iter'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:342,1
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:347,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:352,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:361,1
    - Dst: '&BitSet256::iter'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:365,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:365,1
    - Dst: read_scalar
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:374,1
    - Dst: decode_classes
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:376,1
    - Dst: std::cmp::min
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:387,1
    - Dst: '&BitSet256::iter'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:392,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:392,1
    - Dst: is_used
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:403,1
    - Dst: read_residue_partition_format0
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:409,1
    - Dst: read_residue_partition_format1
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:414,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:429,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 155
    argCount: 5
    argNames:
    - bs
    - bs_exp
    - codebooks
    - residue_channels
    - channels
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - u8
    - '&[VorbisCodebook]'
    - '&BitSet256'
    - '&mut [DspChannel]'
    constantsTouched: []
    func_position:
      end: 430
      start: 310
    functionDepth: 16
    functionLinenumber: 310
    functionLinenumberEnd: 430
    functionName: Residue::read_residue_inner_type_0_1
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 1
    functionsReached:
    - read_residue_partition_format1
    - Ok
    - decode_classes
    - read_residue_partition_format0
    - '&BitSet256::count'
    - is_used
    - fill
    - step_by
    - std::cmp::min
    - dimensions
    - read_scalar
    - Residue::prepare_partition_classes
    - '&BitSet256::iter'
    - enumerate
    linkageType: ''
    returnType: Result
    signature: 'fn read_residue_inner_type_0_1(&mut self,bs: &mut BitReaderRtl<''_>,bs_exp:
      u8,codebooks: &[VorbisCodebook],residue_channels: &BitSet256,channels: &mut
      [DspChannel],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:435,1
    - Dst: resize
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:436,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 438
      start: 434
    functionDepth: 15
    functionLinenumber: 434
    functionLinenumberEnd: 438
    functionName: Residue::prepare_partition_classes
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 2
    functionsReached:
    - Default::default
    - len
    - resize
    linkageType: ''
    returnType: void
    signature: 'fn prepare_partition_classes(&mut self, len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:444,1
    - Dst: resize
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:445,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:445,1
    - Dst: fill
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - len
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 448
      start: 443
    functionDepth: 15
    functionLinenumber: 443
    functionLinenumberEnd: 448
    functionName: Residue::prepare_type_2_format_buffer
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 1
    functionsReached:
    - fill
    - Default::default
    - len
    - resize
    linkageType: ''
    returnType: void
    signature: 'fn prepare_type_2_format_buffer(&mut self, len: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: usize::from
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:452,1
    - Dst: '&mut [u8]::len'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:455,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:473,1
    - Dst: rev
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:473,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 4
    argNames:
    - val
    - parts_per_classword
    - classifications
    - out
    argTypes:
    - u32
    - u16
    - u32
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 477
      start: 451
    functionDepth: 3
    functionLinenumber: 451
    functionLinenumberEnd: 477
    functionName: decode_classes
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 2
    functionsReached:
    - usize::from
    - rev
    - iter_mut
    - '&mut [u8]::len'
    linkageType: ''
    returnType: void
    signature: 'fn decode_classes(mut val: u32, parts_per_classword: u16, classifications:
      u32, out: &mut [u8])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut [f32]::len'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:484,1
    - Dst: Codebook::dimensions
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:484,1
    - Dst: Codebook::read_vq
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:487,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:489,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:489,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:489,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:494,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 3
    argNames:
    - bs
    - codebook
    - out
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - '&VorbisCodebook'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 495
      start: 479
    functionDepth: 16
    functionLinenumber: 479
    functionLinenumberEnd: 495
    functionName: read_residue_partition_format0
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 1
    functionsReached:
    - Codebook::read_vq
    - Codebook::dimensions
    - '&mut [f32]::len'
    - zip
    - step_by
    - iter_mut
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read_residue_partition_format0(bs: &mut BitReaderRtl<''_>,codebook:
      &VorbisCodebook,out: &mut [f32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Codebook::dimensions
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:503,1
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:509,1
    - Dst: Codebook::read_vq
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:510,1
    - Dst: Result::try_into
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:513,1
    - Dst: expect
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:513,1
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:520,1
    - Dst: Codebook::read_vq
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:521,1
    - Dst: Result::try_into
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:523,1
    - Dst: expect
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:523,1
    - Dst: '&mut [f32]::chunks_exact_mut'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:532,1
    - Dst: Codebook::read_vq
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:533,1
    - Dst: '&mut [f32]::iter_mut'
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:535,1
    - Dst: zip
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:535,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-codec-vorbis/src/residue.rs:542,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 62
    argCount: 3
    argNames:
    - bs
    - codebook
    - out
    argTypes:
    - '&mut BitReaderRtl<''_>'
    - '&VorbisCodebook'
    - '&mut [f32]'
    constantsTouched: []
    func_position:
      end: 543
      start: 498
    functionDepth: 16
    functionLinenumber: 498
    functionLinenumberEnd: 543
    functionName: read_residue_partition_format1
    functionSourceFile: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
    functionUses: 2
    functionsReached:
    - Codebook::read_vq
    - Codebook::dimensions
    - Result::try_into
    - expect
    - zip
    - '&mut [f32]::iter_mut'
    - Ok
    - '&mut [f32]::chunks_exact_mut'
    linkageType: ''
    returnType: Result
    signature: 'fn read_residue_partition_format1(bs: &mut BitReaderRtl<''_>,codebook:
      &VorbisCodebook,out: &mut [f32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:227,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 61
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 267
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 267
    functionName: is_likely_frame_header
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/frame.rs
    functionUses: 1
    functionsReached:
    - Result::len
    linkageType: ''
    returnType: bool
    signature: 'pub fn is_likely_frame_header(buf: &[u8]) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-bundle-flac/src/frame.rs:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 332
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 332
    functionName: tests::verify_utf8_decode_be_u64
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/frame.rs
    functionUses: 0
    functionsReached:
    - BufReader::new
    linkageType: ''
    returnType: void
    signature: fn verify_utf8_decode_be_u64()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:33,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:33,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - left
    - side
    argTypes:
    - '&[i32]'
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: decorrelate_left_side
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - zip
    - iter_mut
    linkageType: ''
    returnType: void
    signature: 'fn decorrelate_left_side(left: &[i32], side: &mut [i32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:79,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - right
    - side
    argTypes:
    - '&[i32]'
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: decorrelate_right_side
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - zip
    - iter_mut
    linkageType: ''
    returnType: void
    signature: 'fn decorrelate_right_side(right: &[i32], side: &mut [i32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:96,1
    - Dst: as_ref
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:100,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:102,1
    - Dst: StreamInfo::read
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:106,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:106,1
    - Dst: clone
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:109,1
    - Dst: with_sample_rate
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:112,1
    - Dst: '&mut Self::with_bits_per_sample'
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:112,1
    - Dst: '&mut Self::with_max_frames_per_packet'
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:112,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:115,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:112,1
    - Dst: clone
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:116,1
    - Dst: with_verification_code
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:119,1
    - Dst: VerificationCheck::Md5
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:119,1
    - Dst: AudioSpec::new
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:122,1
    - Dst: clone
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:122,1
    - Dst: AudioBuffer::new
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:123,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:123,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:130,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:133,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 54
    argCount: 2
    argNames:
    - params
    - options
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 136
      start: 93
    functionDepth: 15
    functionLinenumber: 93
    functionLinenumberEnd: 136
    functionName: FlacDecoder::try_new
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - with_verification_code
    - usize::from
    - '&mut Self::with_channels'
    - '&mut Self::with_bits_per_sample'
    - u64::from
    - Ok
    - symphonia_core::errors::unsupported_error
    - as_ref
    - AudioBuffer::new
    - '&mut Self::with_max_frames_per_packet'
    - BufReader::new
    - StreamInfo::read
    - with_sample_rate
    - Default::default
    - AudioSpec::new
    - VerificationCheck::Md5
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(params: &AudioCodecParameters, options: &AudioDecoderOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::as_buf_reader
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:139,1
    - Dst: sync_frame
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:142,1
    - Dst: read_frame_header
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:144,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:155,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:158,1
    - Dst: capacity
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:169,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:170,1
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:172,1
    - Dst: render_uninit
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:173,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:173,1
    - Dst: BitReaderLtr::new
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:178,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:178,1
    - Dst: read_subframe
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:184,1
    - Dst: plane_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:187,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:187,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:189,1
    - Dst: plane_pair_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:196,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:196,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:199,1
    - Dst: read_subframe
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:201,1
    - Dst: read_subframe
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:202,1
    - Dst: decorrelate_left_side
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:204,1
    - Dst: plane_pair_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:207,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:207,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:210,1
    - Dst: read_subframe
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:212,1
    - Dst: read_subframe
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:213,1
    - Dst: decorrelate_mid_side
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:215,1
    - Dst: plane_pair_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:218,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:218,1
    - Dst: Error::DecodeError
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:221,1
    - Dst: read_subframe
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:223,1
    - Dst: read_subframe
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:224,1
    - Dst: decorrelate_right_side
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:226,1
    - Dst: update
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:233,1
    - Dst: apply
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:241,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:244,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 141
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 245
      start: 138
    functionDepth: 15
    functionLinenumber: 138
    functionLinenumberEnd: 245
    functionName: FlacDecoder::decode_inner
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - Result::read_buf_bytes_available_ref
    - sync_frame
    - Ok
    - symphonia_core::errors::decode_error
    - plane_pair_mut
    - update
    - decorrelate_left_side
    - Result::as_buf_reader
    - decorrelate_mid_side
    - clear
    - plane_mut
    - read_frame_header
    - read_subframe
    - Some
    - BitReaderLtr::new
    - apply
    - capacity
    - render_uninit
    - Error::DecodeError
    - decorrelate_right_side
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn decode_inner(&mut self, packet: &PacketRef<''_>) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Self::supported_codecs
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:251,1
    - Dst: '&''static [SupportedAudioCodec]::first'
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:251,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: FlacDecoder::codec_info
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached:
    - '&''static [SupportedAudioCodec]::first'
    - expect
    - Self::supported_codecs
    linkageType: ''
    returnType: '&CodecInfo'
    signature: fn codec_info(&self) -> &CodecInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 256
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionName: FlacDecoder::reset
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 260
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionName: FlacDecoder::codec_params
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&AudioCodecParameters'
    signature: fn codec_params(&self) -> &AudioCodecParameters
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: FlacDecoder::decode_inner
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:263,1
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:264,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:265,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:268,1
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - packet
    argTypes:
    - '&PacketRef<''_>'
    constantsTouched: []
    func_position:
      end: 270
      start: 262
    functionDepth: 16
    functionLinenumber: 262
    functionLinenumberEnd: 270
    functionName: FlacDecoder::decode_ref
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached:
    - Ok
    - as_generic_audio_buffer_ref
    - FlacDecoder::decode_inner
    - Err
    - clear
    linkageType: ''
    returnType: Result
    signature: 'fn decode_ref(&mut self, packet: &PacketRef<''_>) -> Result<GenericAudioBufferRef<''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:273,1
    - Dst: md5
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:279,1
    - Dst: String::with_capacity
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:286,1
    - Dst: String::with_capacity
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:287,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:289,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:289,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:290,1
    - Dst: GenericAudioBufferRef::iter
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:292,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:292,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:293,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:300,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 308
      start: 272
    functionDepth: 15
    functionLinenumber: 272
    functionLinenumberEnd: 308
    functionName: FlacDecoder::finalize
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached:
    - GenericAudioBufferRef::iter
    - expect
    - Some
    - iter
    - md5
    - String::with_capacity
    - Default::default
    - for_each
    linkageType: ''
    returnType: FinalizeResult
    signature: fn finalize(&mut self) -> FinalizeResult
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_generic_audio_buffer_ref
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 312
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionName: FlacDecoder::last_decoded
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached:
    - as_generic_audio_buffer_ref
    linkageType: ''
    returnType: GenericAudioBufferRef
    signature: fn last_decoded(&self) -> GenericAudioBufferRef<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:323,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:323,1
    - Dst: FlacDecoder::try_new
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - params
    - opts
    argTypes:
    - '&AudioCodecParameters'
    - '&AudioDecoderOptions'
    constantsTouched: []
    func_position:
      end: 324
      start: 316
    functionDepth: 10
    functionLinenumber: 316
    functionLinenumberEnd: 324
    functionName: FlacDecoder::try_registry_new
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - FlacDecoder::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_registry_new(params: &AudioCodecParameters,opts: &AudioDecoderOptions,)
      -> Result<Box<dyn AudioDecoder>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_audio_codec
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 328
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 328
    functionName: FlacDecoder::supported_codecs
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_audio_codec
    linkageType: ''
    returnType: '&''static [SupportedAudioCodec]'
    signature: fn supported_codecs() -> &'static [SupportedAudioCodec]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:343,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:344,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:348,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:357,1
    - Dst: SubFrameType::FixedLinear
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:359,1
    - Dst: SubFrameType::Linear
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:361,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:363,1
    - Dst: i32::read_bool
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:370,1
    - Dst: i32::read_unary_zeros
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:370,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:372,1
    - Dst: decode_constant
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:390,1
    - Dst: decode_verbatim
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:391,1
    - Dst: decode_fixed_linear
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:392,1
    - Dst: decode_linear
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:393,1
    - Dst: samples_shl
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:397,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:399,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 3
    argNames:
    - bs
    - frame_bps
    - buf
    argTypes:
    - '&mut B'
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 400
      start: 341
    functionDepth: 16
    functionLinenumber: 341
    functionLinenumberEnd: 400
    functionName: read_subframe
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - i32::read_unary_zeros
    - i32::read_bits_leq32
    - decode_fixed_linear
    - decode_constant
    - SubFrameType::Linear
    - samples_shl
    - i32::read_bool
    - decode_linear
    - Ok
    - symphonia_core::errors::decode_error
    - decode_verbatim
    - SubFrameType::FixedLinear
    linkageType: ''
    returnType: Result
    signature: 'fn read_subframe<B: ReadBitsLtr>(bs: &mut B, frame_bps: u32, buf:
      &mut [i32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:405,1
    - Dst: '&''a [T]::wrapping_shl'
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:406,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - shift
    - buf
    argTypes:
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 409
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 409
    functionName: samples_shl
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - '&''a [T]::wrapping_shl'
    - Result::iter_mut
    linkageType: ''
    returnType: void
    signature: 'fn samples_shl(shift: u32, buf: &mut [i32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::util::bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:412,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:412,1
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:414,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:418,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - bs
    - bps
    - buf
    argTypes:
    - '&mut B'
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 419
      start: 411
    functionDepth: 16
    functionLinenumber: 411
    functionLinenumberEnd: 419
    functionName: decode_constant
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - Result::iter_mut
    - symphonia_core::util::bits::sign_extend_leq32_to_i32
    linkageType: ''
    returnType: Result
    signature: 'fn decode_constant<B: ReadBitsLtr>(bs: &mut B, bps: u32, buf: &mut
      [i32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:422,1
    - Dst: symphonia_core::util::bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:423,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:423,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:426,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - bs
    - bps
    - buf
    argTypes:
    - '&mut B'
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 427
      start: 421
    functionDepth: 16
    functionLinenumber: 421
    functionLinenumberEnd: 427
    functionName: decode_verbatim
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 3
    functionsReached:
    - i32::read_bits_leq32
    - Ok
    - Result::iter_mut
    - symphonia_core::util::bits::sign_extend_leq32_to_i32
    linkageType: ''
    returnType: Result
    signature: 'fn decode_verbatim<B: ReadBitsLtr>(bs: &mut B, bps: u32, buf: &mut
      [i32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:435,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:436,1
    - Dst: decode_verbatim
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:440,1
    - Dst: decode_residual
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:443,1
    - Dst: fixed_predict
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:450,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:452,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - bs
    - bps
    - order
    - buf
    argTypes:
    - '&mut B'
    - u32
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 453
      start: 429
    functionDepth: 17
    functionLinenumber: 429
    functionLinenumberEnd: 453
    functionName: decode_fixed_linear
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - fixed_predict
    - decode_residual
    - Ok
    - symphonia_core::errors::decode_error
    - decode_verbatim
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'fn decode_fixed_linear<B: ReadBitsLtr>(bs: &mut B,bps: u32,order:
      u32,buf: &mut [i32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:456,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:457,1
    - Dst: decode_verbatim
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:464,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:467,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:470,1
    - Dst: symphonia_core::util::bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:474,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:474,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:479,1
    - Dst: rev
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:479,1
    - Dst: take
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:479,1
    - Dst: symphonia_core::util::bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:480,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:480,1
    - Dst: decode_residual
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:483,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:488,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:488,1
    - Dst: lpc_predict::<N>
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:489,1
    - Dst: lpc::<4>
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:498,1
    - Dst: lpc::<6>
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:499,1
    - Dst: lpc::<8>
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:500,1
    - Dst: lpc::<10>
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:501,1
    - Dst: lpc::<12>
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:502,1
    - Dst: lpc::<32>
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:503,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:507,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:510,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 86
    argCount: 4
    argNames:
    - bs
    - bps
    - order
    - buf
    argTypes:
    - '&mut B'
    - u32
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 511
      start: 455
    functionDepth: 17
    functionLinenumber: 455
    functionLinenumberEnd: 511
    functionName: decode_linear
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::unsupported_error
    - take
    - lpc::<12>
    - iter_mut
    - Ok
    - decode_residual
    - symphonia_core::errors::decode_error
    - lpc::<10>
    - Result::len
    - expect
    - rev
    - try_into
    - decode_verbatim
    - lpc::<4>
    - i32::read_bits_leq32
    - lpc_predict::<N>
    - lpc::<6>
    - lpc::<8>
    - lpc::<32>
    - symphonia_core::util::bits::sign_extend_leq32_to_i32
    linkageType: ''
    returnType: Result
    signature: 'fn decode_linear<B: ReadBitsLtr>(bs: &mut B, bps: u32, order: u32,
      buf: &mut [i32]) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:518,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:528,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:533,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:543,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:549,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:553,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:554,1
    - Dst: decode_rice_partition
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:563,1
    - Dst: chunks_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:570,1
    - Dst: decode_rice_partition
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:571,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:574,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 48
    argCount: 3
    argNames:
    - bs
    - n_prelude_samples
    - buf
    argTypes:
    - '&mut B'
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 575
      start: 513
    functionDepth: 16
    functionLinenumber: 513
    functionLinenumberEnd: 575
    functionName: decode_residual
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 2
    functionsReached:
    - i32::read_bits_leq32
    - decode_rice_partition
    - Ok
    - symphonia_core::errors::decode_error
    - chunks_mut
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'fn decode_residual<B: ReadBitsLtr>(bs: &mut B,n_prelude_samples: u32,buf:
      &mut [i32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:583,1
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:593,1
    - Dst: i32::read_unary_zeros
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:594,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:595,1
    - Dst: rice_signed_to_i32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:596,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:600,1
    - Dst: Result::iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:609,1
    - Dst: symphonia_core::util::bits::sign_extend_leq32_to_i32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:610,1
    - Dst: i32::read_bits_leq32
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:610,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:614,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 3
    argNames:
    - bs
    - param_bit_width
    - buf
    argTypes:
    - '&mut B'
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 615
      start: 577
    functionDepth: 16
    functionLinenumber: 577
    functionLinenumberEnd: 615
    functionName: decode_rice_partition
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - i32::read_unary_zeros
    - i32::read_bits_leq32
    - Result::iter_mut
    - Ok
    - rice_signed_to_i32
    - symphonia_core::util::bits::sign_extend_leq32_to_i32
    linkageType: ''
    returnType: Result
    signature: 'fn decode_rice_partition<B: ReadBitsLtr>(bs: &mut B,param_bit_width:
      u32,buf: &mut [i32],) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - word
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 644
      start: 618
    functionDepth: 0
    functionLinenumber: 618
    functionLinenumberEnd: 644
    functionName: rice_signed_to_i32
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: i32
    signature: 'fn rice_signed_to_i32(word: u32) -> i32'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 661
      start: 647
    functionDepth: 0
    functionLinenumber: 647
    functionLinenumberEnd: 661
    functionName: verify_rice_signed_to_i32
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_rice_signed_to_i32()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:676,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:677,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:682,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:683,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:683,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:683,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:684,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:684,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:684,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:685,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:690,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:691,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:691,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:691,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:692,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:692,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:692,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:693,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:693,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:693,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:694,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:700,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:701,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:701,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:701,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:702,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:702,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:702,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:703,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:703,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:703,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:704,1
    - Dst: std::num::Wrapping
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:704,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:704,1
    - Dst: wrapping_add
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:705,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 123
    argCount: 2
    argNames:
    - order
    - buf
    argTypes:
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 710
      start: 663
    functionDepth: 1
    functionLinenumber: 663
    functionLinenumberEnd: 710
    functionName: fixed_predict
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 1
    functionsReached:
    - i64::from
    - wrapping_add
    - std::num::Wrapping
    - Result::len
    linkageType: ''
    returnType: void
    signature: 'fn fixed_predict(order: u32, buf: &mut [i32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: cmp::min
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:725,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:725,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:728,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:728,1
    - Dst: map
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:728,1
    - Dst: ".N]\n            .iter()\n            .zip(&buf[i - order..i])\n     \
        \       .map(|(&c, &sample)| c as i64 * sample as i64)\n            .sum::<i64>"
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:728,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:738,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:743,1
    - Dst: '&[i32; N]::iter'
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:744,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:744,1
    - Dst: map
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:744,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:747,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:747,1
    - Dst: "iter()\n            .zip(&buf[i - N..i])\n            .map(|(&c, &s)|\
        \ i64::from(c) * i64::from(s))\n            .sum::<i64>"
      Src: /src/symphonia/symphonia-bundle-flac/src/decoder.rs:744,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 67
    argCount: 4
    argNames:
    - order
    - coeffs
    - coeff_shift
    - buf
    argTypes:
    - usize
    - '&[i32; N]'
    - u32
    - '&mut [i32]'
    constantsTouched: []
    func_position:
      end: 752
      start: 716
    functionDepth: 11
    functionLinenumber: 716
    functionLinenumberEnd: 752
    functionName: lpc_predict
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
    functionUses: 0
    functionsReached:
    - "iter()\n            .zip(&buf[i - N..i])\n            .map(|(&c, &s)| i64::from(c)\
      \ * i64::from(s))\n            .sum::<i64>"
    - '&[i32; N]::iter'
    - cmp::min
    - ".N]\n            .iter()\n            .zip(&buf[i - order..i])\n          \
      \  .map(|(&c, &sample)| c as i64 * sample as i64)\n            .sum::<i64>"
    - zip
    - i64::from
    - iter
    - map
    - Result::len
    linkageType: ''
    returnType: void
    signature: 'fn lpc_predict<const N: usize>(order: usize, coeffs: &[i32; N], coeff_shift:
      u32, buf: &mut [i32])'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - usize
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: MovingAverage::push
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'pub fn push(&mut self, value: usize)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: MovingAverage::reset
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: pub fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:41,1
    - Dst: samples.iter().sum::<usize>
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:41,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:46,1
    - Dst: take
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:46,1
    - Dst: samples.iter().take(self.count).sum::<usize>
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:46,1
    - Dst: checked_div
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:46,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 11
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: MovingAverage::average
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - samples.iter().sum::<usize>
    - checked_div
    - take
    - iter
    - samples.iter().take(self.count).sum::<usize>
    - unwrap_or
    linkageType: ''
    returnType: usize
    signature: pub fn average(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: MovingAverage::default
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: fn default() -> Self
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:81,1
    - Dst: u16::from_be_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: FragmentFooter::new
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - copy_from_slice
    - u16::from_be_bytes
    linkageType: ''
    returnType: Self
    signature: 'fn new(buf: &[u8]) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&''static [ProbeFormatData]::len'
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:111,1
    - Dst: '&''static [ProbeFormatData]::split_at'
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:113,1
    - Dst: FragmentFooter::new
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:115,1
    - Dst: Crc16Ansi::new
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:117,1
    - Dst: Self::process_buf_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:118,1
    - Dst: Self::crc
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:119,1
    - Dst: Self::process_buf_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 1
    argNames:
    - data
    argTypes:
    - Box<[u8]>
    constantsTouched: []
    func_position:
      end: 123
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 123
    functionName: Fragment::new
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - Self::crc
    - '&''static [ProbeFormatData]::split_at'
    - Self::process_buf_bytes
    - FragmentFooter::new
    - '&''static [ProbeFormatData]::len'
    - Crc16Ansi::new
    linkageType: ''
    returnType: Self
    signature: 'fn new(data: Box<[u8]>) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:127,1
    - Dst: split_at
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:129,1
    - Dst: process_buf_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:131,1
    - Dst: crc
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:132,1
    - Dst: process_buf_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 27
    argCount: 1
    argNames:
    - frag
    argTypes:
    - '&Fragment'
    constantsTouched: []
    func_position:
      end: 138
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 138
    functionName: Fragment::update
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - split_at
    - process_buf_bytes
    - len
    - crc
    linkageType: ''
    returnType: bool
    signature: 'fn update(&mut self, frag: &Fragment) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:142,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:143,1
    - Dst: io::Result::ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:143,1
    - Dst: read_frame_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:144,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 14
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: Fragment::parse_header
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - read_frame_header
    - io::Result::ok
    - Result::ok
    - Result::read_be_u16
    - BufReader::new
    linkageType: ''
    returnType: Option
    signature: fn parse_header(&self) -> Option<FrameHeader>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - max_size
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 164
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionName: PacketBuilder::set_max_frame_size
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn set_max_frame_size(&mut self, max_size: Option<usize>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: PacketBuilder::get_max_frame_size
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - unwrap_or
    linkageType: ''
    returnType: usize
    signature: fn get_max_frame_size(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - avg_size
    argTypes:
    - Option<usize>
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: PacketBuilder::set_avg_frame_size
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'fn set_avg_frame_size(&mut self, avg_size: Option<usize>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: map
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:175,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 9
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: PacketBuilder::get_max_avg_frame_size
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - unwrap_or
    - map
    linkageType: ''
    returnType: usize
    signature: fn get_max_avg_frame_size(&self) -> usize
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 180
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionName: PacketBuilder::last_header
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn last_header(&self) -> Option<&FrameHeader>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: first
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:184,1
    - Dst: PacketBuilder::get_max_frame_size
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:197,1
    - Dst: PacketBuilder::get_max_avg_frame_size
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:204,1
    - Dst: len
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:211,1
    - Dst: remove
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:220,1
    - Dst: push
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 1
    argNames:
    - frag
    argTypes:
    - Fragment
    constantsTouched: []
    func_position:
      end: 227
      start: 182
    functionDepth: 10
    functionLinenumber: 182
    functionLinenumberEnd: 227
    functionName: PacketBuilder::push_fragment
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - PacketBuilder::get_max_frame_size
    - len
    - first
    - PacketBuilder::get_max_avg_frame_size
    - remove
    - push
    linkageType: ''
    returnType: void
    signature: 'fn push_fragment(&mut self, frag: Fragment)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Fragment::parse_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:232,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:242,1
    - Dst: position
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:242,1
    - Dst: Result::update
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:242,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:251,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:253,1
    - Dst: '&''static [ProbeFormatData]::extend_from_slice'
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:254,1
    - Dst: '&''static [ProbeFormatData]::extend_from_slice'
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:257,1
    - Dst: parse_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:259,1
    - Dst: '&''static [ProbeFormatData]::into_boxed_slice'
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:259,1
    - Dst: PacketBuilder::push_fragment
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:263,1
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:270,1
    - Dst: calc_sync_info
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:272,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:274,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:276,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 65
    argCount: 2
    argNames:
    - stream_info
    - frag
    argTypes:
    - '&StreamInfo'
    - Fragment
    constantsTouched: []
    func_position:
      end: 277
      start: 229
    functionDepth: 15
    functionLinenumber: 229
    functionLinenumberEnd: 277
    functionName: PacketBuilder::try_build
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - '&''static [ProbeFormatData]::extend_from_slice'
    - Fragment::parse_header
    - '&''static [ProbeFormatData]::into_boxed_slice'
    - Some
    - iter
    - PacketBuilder::push_fragment
    - iter_mut
    - Result::update
    - clear
    - calc_sync_info
    - parse_header
    - position
    - Vec::with_capacity
    linkageType: ''
    returnType: Option
    signature: 'fn try_build(&mut self, stream_info: &StreamInfo, frag: Fragment)
      -> Option<ParsedPacket>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 282
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 282
    functionName: PacketBuilder::reset
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: fn reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: checked_add
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:297,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 298
      start: 296
    functionDepth: 10
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionName: ResyncInfo::next_ts
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - checked_add
    - expect
    linkageType: ''
    returnType: Timestamp
    signature: pub fn next_ts(&self) -> Timestamp
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:314,1
    - Dst: reset
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 316
      start: 313
    functionDepth: 13
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionName: PacketParser::soft_reset
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 2
    functionsReached:
    - reset
    linkageType: ''
    returnType: void
    signature: fn soft_reset(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clamp
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:334,1
    - Dst: Result::read_buf
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:342,1
    - Dst: scan_for_sync_preamble
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:358,1
    - Dst: is_likely_frame_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:365,1
    - Dst: read_frame_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:367,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:367,1
    - Dst: last_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:369,1
    - Dst: strict_frame_header_check
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:372,1
    - Dst: Result::seek_buffered_rev
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:375,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:390,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:397,1
    - Dst: Result::resize
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:398,1
    - Dst: Option::saturating_sub
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:404,1
    - Dst: Result::read_buf
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:407,1
    - Dst: Result::truncate
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:422,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:424,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:424,1
    - Dst: Fragment::new
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:424,1
    - Dst: Result::into_boxed_slice
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:424,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 81
    argCount: 2
    argNames:
    - reader
    - avg_frame_size
    argTypes:
    - '&mut B'
    - usize
    constantsTouched: []
    func_position:
      end: 425
      start: 321
    functionDepth: 12
    functionLinenumber: 321
    functionLinenumberEnd: 425
    functionName: PacketParser::try_read_fragment
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - Result::resize
    - Option::saturating_sub
    - Result::truncate
    - read_frame_header
    - Result::into_boxed_slice
    - Some
    - Fragment::new
    - clamp
    - strict_frame_header_check
    - is_likely_frame_header
    - BufReader::new
    - Result::read_buf
    - Ok
    - scan_for_sync_preamble
    - last_header
    - Result::seek_buffered_rev
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'fn try_read_fragment<B>(&self,reader: &mut B,avg_frame_size: usize,)
      -> Result<Option<Fragment>>whereB: ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: PacketParser::try_read_fragment
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:433,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:434,1
    - Dst: PacketParser::resync
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:439,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - reader
    - avg_frame_size
    argTypes:
    - '&mut B'
    - usize
    constantsTouched: []
    func_position:
      end: 441
      start: 428
    functionDepth: 13
    functionLinenumber: 428
    functionLinenumberEnd: 441
    functionName: PacketParser::read_fragment
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - Ok
    - PacketParser::try_read_fragment
    - PacketParser::resync
    linkageType: ''
    returnType: Result
    signature: 'fn read_fragment<B>(&mut self, reader: &mut B, avg_frame_size: usize)
      -> Result<Fragment>whereB: ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: PacketParser::read_fragment
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:453,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:454,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:454,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:455,1
    - Dst: last_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:459,1
    - Dst: calc_sync_info
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:460,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:462,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:469,1
    - Dst: Error::IoError
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:469,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:474,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:476,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 2
    argNames:
    - reader
    - avg_frame_size
    argTypes:
    - '&mut B'
    - usize
    constantsTouched: []
    func_position:
      end: 478
      start: 445
    functionDepth: 14
    functionLinenumber: 445
    functionLinenumberEnd: 478
    functionName: PacketParser::read_fragment_or_eos
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - Error::IoError
    - u64::from
    - Some
    - PacketParser::read_fragment
    - Err
    - Ok
    - calc_sync_info
    - last_header
    - Result::kind
    linkageType: ''
    returnType: Result
    signature: 'fn read_fragment_or_eos<B>(&mut self,reader: &mut B,avg_frame_size:
      usize,) -> Result<Option<Fragment>>whereB: ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: average
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:485,1
    - Dst: set_avg_frame_size
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:488,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:488,1
    - Dst: PacketParser::read_fragment_or_eos
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:492,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:494,1
    - Dst: try_build
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:497,1
    - Dst: push
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:503,1
    - Dst: len
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:503,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:505,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:505,1
    - Dst: Packet::new
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:505,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:507,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:507,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:508,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 44
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 511
      start: 481
    functionDepth: 12
    functionLinenumber: 481
    functionLinenumberEnd: 511
    functionName: PacketParser::parse
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - try_build
    - expect
    - len
    - PacketParser::read_fragment_or_eos
    - Some
    - Duration::from
    - Packet::new
    - try_into
    - Ok
    - set_avg_frame_size
    - average
    - push
    linkageType: ''
    returnType: Result
    signature: 'pub fn parse<B>(&mut self, reader: &mut B) -> Result<Option<Packet>>whereB:
      ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:518,1
    - Dst: sync_frame
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:523,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:525,1
    - Dst: read_frame_header
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:527,1
    - Dst: strict_frame_header_check
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:529,1
    - Dst: Result::seek_buffered
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:536,1
    - Dst: calc_sync_info
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:539,1
    - Dst: Result::seek_buffered
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:542,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:545,1
    - Dst: PacketParser::soft_reset
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:546,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:549,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:550,1
    - Dst: expect
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:550,1
    - Dst: into
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:551,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 50
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 553
      start: 514
    functionDepth: 15
    functionLinenumber: 514
    functionLinenumberEnd: 553
    functionName: PacketParser::resync
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - expect
    - read_frame_header
    - Ok
    - into
    - Result::pos
    - PacketParser::soft_reset
    - sync_frame
    - strict_frame_header_check
    - Result::seek_buffered
    - try_into
    - calc_sync_info
    linkageType: ''
    returnType: Result
    signature: 'pub fn resync<B>(&mut self, reader: &mut B) -> Result<ResyncInfo>whereB:
      ReadBytes + SeekBuffered,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:558,1
    - Dst: set_max_frame_size
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:561,1
    - Dst: PacketParser::soft_reset
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:562,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - info
    argTypes:
    - StreamInfo
    constantsTouched: []
    func_position:
      end: 563
      start: 556
    functionDepth: 14
    functionLinenumber: 556
    functionLinenumberEnd: 563
    functionName: PacketParser::reset
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 0
    functionsReached:
    - PacketParser::soft_reset
    - Some
    - set_max_frame_size
    linkageType: ''
    returnType: void
    signature: 'pub fn reset(&mut self, info: StreamInfo)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:574,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:574,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:579,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:579,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - stream_info
    - header
    argTypes:
    - '&StreamInfo'
    - '&FrameHeader'
    constantsTouched: []
    func_position:
      end: 584
      start: 566
    functionDepth: 1
    functionLinenumber: 566
    functionLinenumberEnd: 584
    functionName: calc_sync_info
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 3
    functionsReached:
    - u64::from
    linkageType: ''
    returnType: SyncInfo
    signature: 'fn calc_sync_info(stream_info: &StreamInfo, header: &FrameHeader)
      -> SyncInfo'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:617,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:627,1
    - Dst: count
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:642,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 62
    argCount: 3
    argNames:
    - stream_info
    - header
    - last_header
    argTypes:
    - '&StreamInfo'
    - '&FrameHeader'
    - Option<&FrameHeader>
    constantsTouched: []
    func_position:
      end: 647
      start: 586
    functionDepth: 10
    functionLinenumber: 586
    functionLinenumberEnd: 647
    functionName: strict_frame_header_check
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 2
    functionsReached:
    - count
    - u64::from
    linkageType: ''
    returnType: bool
    signature: 'fn strict_frame_header_check(stream_info: &StreamInfo,header: &FrameHeader,last_header:
      Option<&FrameHeader>,) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:652,1
    - Dst: bits::contains_ones_byte_u64
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:656,1
    - Dst: u64::from_ne_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 657
      start: 650
    functionDepth: 1
    functionLinenumber: 650
    functionLinenumberEnd: 657
    functionName: may_contain_sync_preamble
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - copy_from_slice
    - u64::from_ne_bytes
    - bits::contains_ones_byte_u64
    linkageType: ''
    returnType: bool
    signature: 'fn may_contain_sync_preamble(buf: &[u8]) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::chunks_exact
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:662,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:662,1
    - Dst: may_contain_sync_preamble
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:665,1
    - Dst: iter
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:676,1
    - Dst: take
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:676,1
    - Dst: enumerate
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:676,1
    - Dst: u16::from
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:677,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/parser.rs:681,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 44
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 688
      start: 661
    functionDepth: 11
    functionLinenumber: 661
    functionLinenumberEnd: 688
    functionName: scan_for_sync_preamble
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/parser.rs
    functionUses: 1
    functionsReached:
    - u16::from
    - Result::chunks_exact
    - take
    - iter
    - Some
    - may_contain_sync_preamble
    - enumerate
    linkageType: ''
    returnType: Option
    signature: 'fn scan_for_sync_preamble(buf: &[u8]) -> Option<(usize, u16)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Option::read_quad_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:57,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:60,1
    - Dst: FlacReader::init_with_metadata
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:67,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:70,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:71,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 75
      start: 55
    functionDepth: 15
    functionLinenumber: 55
    functionLinenumberEnd: 75
    functionName: FlacReader::try_new
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::unsupported_error
    - Option::read_quad_bytes
    - Ok
    - symphonia_core::errors::decode_error
    - FlacReader::init_with_metadata
    - is_empty
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:79,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:83,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:86,1
    - Dst: MetadataBlockHeader::read
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:89,1
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:93,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:93,1
    - Dst: Result::is_none
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:99,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:100,1
    - Dst: read_stream_info_block
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:100,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:103,1
    - Dst: read_flac_application_block
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:108,1
    - Dst: '&[Attachment]::push'
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:109,1
    - Dst: Attachment::VendorData
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:109,1
    - Dst: Option::is_none
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:114,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:116,1
    - Dst: read_flac_seektable_block
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:116,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:119,1
    - Dst: read_flac_comment_block
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:124,1
    - Dst: Result::as_ref
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:131,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:131,1
    - Dst: Some
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:132,1
    - Dst: read_flac_cuesheet_block
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:132,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:135,1
    - Dst: Self::add_visual
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:140,1
    - Dst: read_flac_picture_block
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:140,1
    - Dst: Self::ignore_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:144,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:144,1
    - Dst: Self::ignore_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:149,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:149,1
    - Dst: Self::bytes_available
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:156,1
    - Dst: Self::ignore_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:160,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:173,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:177,1
    - Dst: Metadata::push
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:178,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:178,1
    - Dst: resync
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:181,1
    - Dst: Result::pos
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:185,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:187,1
    - Dst: MediaInfo::from_track
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:189,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 129
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'s>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 198
      start: 78
    functionDepth: 16
    functionLinenumber: 78
    functionLinenumberEnd: 198
    functionName: FlacReader::init_with_metadata
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - Result::is_none
    - MetadataBuilder::new
    - Result::pos
    - Self::add_visual
    - Ok
    - symphonia_core::errors::decode_error
    - Self::build
    - unwrap_or_default
    - resync
    - Metadata::push
    - Attachment::VendorData
    - Self::ignore_bytes
    - read_flac_comment_block
    - read_flac_seektable_block
    - MediaInfo::from_track
    - '&[Attachment]::push'
    - u64::from
    - read_flac_application_block
    - Some
    - Vec::new
    - MetadataBlockHeader::read
    - ScopedStream::new
    - and_then
    - Self::bytes_available
    - Default::default
    - read_flac_cuesheet_block
    - read_stream_info_block
    - Option::is_none
    - read_flac_picture_block
    - Result::as_ref
    linkageType: ''
    returnType: Result
    signature: 'fn init_with_metadata(mss: MediaSourceStream<''s>, opts: FormatOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:203,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 204
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionName: FlacReader::score
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:212,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:212,1
    - Dst: FlacReader::try_new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - FormatOptions
    constantsTouched: []
    func_position:
      end: 213
      start: 208
    functionDepth: 16
    functionLinenumber: 208
    functionLinenumberEnd: 213
    functionName: FlacReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - FlacReader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: FormatOptions,)
      -> Result<Box<dyn FormatReader + ''_>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_format
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: FlacReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_format
    linkageType: ''
    returnType: '&''static [ProbeFormatData]'
    signature: fn probe_data() -> &'static [ProbeFormatData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 223
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionName: FlacReader::format_info
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&FormatInfo'
    signature: fn format_info(&self) -> &FormatInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: FlacReader::media_info
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MediaInfo'
    signature: fn media_info(&self) -> &MediaInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 231
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 231
    functionName: FlacReader::attachments
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Attachment]'
    signature: fn attachments(&self) -> &[Attachment]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 235
      start: 233
    functionDepth: 2
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionName: FlacReader::next_packet
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - parse
    linkageType: ''
    returnType: Result
    signature: fn next_packet(&mut self) -> Result<Option<Packet>>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: metadata
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 239
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionName: FlacReader::metadata
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - metadata
    linkageType: ''
    returnType: Metadata
    signature: fn metadata(&mut self) -> Metadata<'_>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: as_ref
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 243
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionName: FlacReader::chapters
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - as_ref
    linkageType: ''
    returnType: Option
    signature: fn chapters(&self) -> Option<&ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 247
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionName: FlacReader::tracks
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&[Track]'
    signature: fn tracks(&self) -> &[Track]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: first
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:250,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:252,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:262,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:262,1
    - Dst: calc_timestamp
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:265,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:265,1
    - Dst: Error::SeekError
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:265,1
    - Dst: Timestamp::is_negative
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:272,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:273,1
    - Dst: Timestamp::get
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:280,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:281,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:287,1
    - Dst: seek
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:293,1
    - Dst: SeekFrom::End
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:293,1
    - Dst: Option::search
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:298,1
    - Dst: seek
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:323,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:323,1
    - Dst: resync
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:325,1
    - Dst: Result::next_ts
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:330,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:333,1
    - Dst: seek
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:342,1
    - Dst: SeekFrom::Start
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:342,1
    - Dst: resync
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:358,1
    - Dst: Result::kind
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:361,1
    - Dst: is_none
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:362,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:364,1
    - Dst: Err
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:366,1
    - Dst: is_seekable
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:372,1
    - Dst: symphonia_core::errors::seek_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:373,1
    - Dst: Result::next_ts
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:382,1
    - Dst: read_byte
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:387,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:392,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 176
    argCount: 2
    argNames:
    - _mode
    - to
    argTypes:
    - SeekMode
    - SeekTo
    constantsTouched: []
    func_position:
      end: 393
      start: 249
    functionDepth: 11
    functionLinenumber: 249
    functionLinenumberEnd: 393
    functionName: FlacReader::seek
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached:
    - Option::search
    - Ok
    - first
    - resync
    - is_seekable
    - Result::next_ts
    - Result::kind
    - Timestamp::get
    - read_byte
    - symphonia_core::errors::seek_error
    - SeekFrom::End
    - calc_timestamp
    - Timestamp::is_negative
    - Error::SeekError
    - SeekFrom::Start
    - seek
    - Err
    - is_none
    - ok_or
    linkageType: ''
    returnType: Result
    signature: 'fn seek(&mut self, _mode: SeekMode, to: SeekTo) -> Result<SeekedTo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 400
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 400
    functionName: FlacReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: StreamInfo::is_valid_size
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:410,1
    - Dst: Result::byte_len
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:410,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:411,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:416,1
    - Dst: Result::byte_len
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:416,1
    - Dst: StreamInfo::read
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:419,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:419,1
    - Dst: AudioCodecParameters::new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:422,1
    - Dst: Result::for_codec
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:424,1
    - Dst: '&mut Self::with_extra_data'
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:424,1
    - Dst: '&mut Self::with_sample_rate'
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:424,1
    - Dst: '&mut Self::with_bits_per_sample'
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:424,1
    - Dst: '&mut Self::with_channels'
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:424,1
    - Dst: clone
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:429,1
    - Dst: Result::with_verification_code
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:432,1
    - Dst: VerificationCheck::Md5
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:432,1
    - Dst: Track::new
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:436,1
    - Dst: Result::with_codec_params
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:438,1
    - Dst: CodecParameters::Audio
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:438,1
    - Dst: Result::with_num_frames
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:442,1
    - Dst: Result::with_duration
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:444,1
    - Dst: Duration::from
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:444,1
    - Dst: reset
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:448,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs:450,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 63
    argCount: 2
    argNames:
    - reader
    - parser
    argTypes:
    - '&mut B'
    - '&mut PacketParser'
    constantsTouched: []
    func_position:
      end: 451
      start: 404
    functionDepth: 13
    functionLinenumber: 404
    functionLinenumberEnd: 451
    functionName: read_stream_info_block
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
    functionUses: 1
    functionsReached:
    - '&mut Self::with_sample_rate'
    - CodecParameters::Audio
    - Result::read_boxed_slice_exact
    - '&mut Self::with_channels'
    - Track::new
    - Ok
    - symphonia_core::errors::decode_error
    - Result::with_duration
    - Result::with_verification_code
    - Result::byte_len
    - AudioCodecParameters::new
    - Result::with_codec_params
    - StreamInfo::is_valid_size
    - Result::with_num_frames
    - VerificationCheck::Md5
    - StreamInfo::read
    - '&mut Self::with_extra_data'
    - '&mut Self::with_bits_per_sample'
    - reset
    - Duration::from
    - BufReader::new
    - Result::for_codec
    - clone
    linkageType: ''
    returnType: Result
    signature: 'fn read_stream_info_block<B: ReadBytes + FiniteStream>(reader: &mut
      B,parser: &mut PacketParser,) -> Result<Track>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::spec
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:47,1
    - Dst: AudioSpec::channels
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:47,1
    - Dst: '&Channels::count'
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:47,1
    - Dst: Result::frames
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:48,1
    - Dst: len
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:54,1
    - Dst: resize
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:55,1
    - Dst: copy_as_i8
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:61,1
    - Dst: copy_as_i16
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:62,1
    - Dst: copy_as_i24
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:63,1
    - Dst: copy_as_i32
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:64,1
    - Dst: process_buf_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 39
    argCount: 2
    argNames:
    - buf
    - bps
    argTypes:
    - '&AudioBuffer<i32>'
    - u32
    constantsTouched: []
    func_position:
      end: 70
      start: 25
    functionDepth: 12
    functionLinenumber: 25
    functionLinenumberEnd: 70
    functionName: Validator::update
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/validate.rs
    functionUses: 0
    functionsReached:
    - len
    - AudioSpec::channels
    - copy_as_i16
    - '&Channels::count'
    - Result::spec
    - process_buf_bytes
    - copy_as_i32
    - Result::frames
    - copy_as_i8
    - copy_as_i24
    - resize
    linkageType: ''
    returnType: void
    signature: 'pub fn update(&mut self, buf: &AudioBuffer<i32>, bps: u32)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: md5
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 7
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: Validator::md5
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/validate.rs
    functionUses: 0
    functionsReached:
    - md5
    linkageType: ''
    returnType: '[u8; 16]'
    signature: pub fn md5(&mut self) -> [u8; 16]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::chunks_exact_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:87,1
    - Dst: skip
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:87,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:87,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:87,1
    - Dst: Result::plane
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:91,1
    - Dst: usize::expect
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:91,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:93,1
    - Dst: '&''a [T]::to_le_bytes'
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 31
    argCount: 4
    argNames:
    - samples
    - buf
    - n_channels
    - n_frames
    argTypes:
    - '&AudioBuffer<i32>'
    - '&''a mut [u8]'
    - usize
    - usize
    constantsTouched: []
    func_position:
      end: 98
      start: 78
    functionDepth: 15
    functionLinenumber: 78
    functionLinenumberEnd: 98
    functionName: copy_as_i24
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/validate.rs
    functionUses: 1
    functionsReached:
    - skip
    - usize::expect
    - Result::plane
    - zip
    - step_by
    - '&''a [T]::to_le_bytes'
    - copy_from_slice
    - Result::chunks_exact_mut
    linkageType: ''
    returnType: '&''a [u8]'
    signature: 'fn copy_as_i24<''a>(samples: &AudioBuffer<i32>,buf: &''a mut [u8],n_channels:
      usize,n_frames: usize,) -> &''a [u8]'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::chunks_exact_mut
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:9,1
    - Dst: mem::size_of::<$type>
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:10,1
    - Dst: skip
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:9,1
    - Dst: step_by
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:9,1
    - Dst: zip
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:9,1
    - Dst: Result::plane
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:13,1
    - Dst: usize::expect
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:13,1
    - Dst: copy_from_slice
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:15,1
    - Dst: to_le_bytes
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:15,1
    - Dst: mem::size_of::<$type>
      Src: /src/symphonia/symphonia-bundle-flac/src/validate.rs:19,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 122
      start: 100
    functionDepth: 15
    functionLinenumber: 100
    functionLinenumberEnd: 122
    functionName: copy_as
    functionSourceFile: /src/symphonia/symphonia-bundle-flac/src/validate.rs
    functionUses: 0
    functionsReached:
    - skip
    - usize::expect
    - zip
    - Result::plane
    - to_le_bytes
    - step_by
    - mem::size_of::<$type>
    - copy_from_slice
    - Result::chunks_exact_mut
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_triple_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:29,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:32,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:36,1
    - Dst: decode_iso8859_buf
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:38,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:39,1
    - Dst: Option::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:39,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:39,1
    - Dst: StandardTag::TrackTitle
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:39,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:40,1
    - Dst: decode_iso8859_buf
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:43,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:44,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:44,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:44,1
    - Dst: StandardTag::Artist
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:44,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:45,1
    - Dst: decode_iso8859_buf
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:48,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:49,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:49,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:49,1
    - Dst: StandardTag::Album
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:49,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:50,1
    - Dst: decode_iso8859_buf
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:53,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:54,1
    - Dst: StandardTagPair::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:56,1
    - Dst: parse::<u16>
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:57,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:57,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:57,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:59,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:66,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:68,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:68,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:68,1
    - Dst: StandardTag::TrackNumber
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:68,1
    - Dst: decode_iso8859_buf
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:70,1
    - Dst: decode_iso8859_buf
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:73,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:78,1
    - Dst: Result::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:78,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:78,1
    - Dst: StandardTag::Comment
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:78,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:79,1
    - Dst: utils::id3v1::get_genre_name
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:83,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:83,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:84,1
    - Dst: StandardTagPair::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:84,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:84,1
    - Dst: StandardTag::Genre
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:84,1
    - Dst: '&mut MetadataBuilder::add_tag'
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:85,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:88,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 121
    argCount: 2
    argNames:
    - reader
    - builder
    argTypes:
    - '&mut B'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 89
      start: 27
    functionDepth: 13
    functionLinenumber: 27
    functionLinenumberEnd: 89
    functionName: read_id3v1
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 1
    functionsReached:
    - Result::clone
    - StandardTag::Artist
    - symphonia_core::errors::unsupported_error
    - StandardTag::Album
    - Ok
    - Tag::new_from_parts
    - Option::clone
    - parse::<u16>
    - decode_iso8859_buf
    - Result::read_buf_exact
    - map
    - Option::map
    - ok
    - StandardTag::Comment
    - StandardTag::Genre
    - StandardTagPair::clone
    - StandardTag::TrackTitle
    - Result::read_triple_bytes
    - u64::from
    - Some
    - utils::id3v1::get_genre_name
    - '&mut MetadataBuilder::add_tag'
    - StandardTag::TrackNumber
    - clone
    linkageType: ''
    returnType: Result
    signature: 'fn read_id3v1<B: ReadBytes>(reader: &mut B, builder: &mut MetadataBuilder)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: text::decode_iso8859_1_lossy
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:95,1
    - Dst: impl Iterator::take_while
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:95,1
    - Dst: take_while(text::filter::not_null).collect::<String>
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:95,1
    - Dst: bool::is_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:98,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:98,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 99
      start: 91
    functionDepth: 12
    functionLinenumber: 91
    functionLinenumberEnd: 99
    functionName: decode_iso8859_buf
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 1
    functionsReached:
    - take_while(text::filter::not_null).collect::<String>
    - bool::is_empty
    - Arc::new
    - text::decode_iso8859_1_lossy
    - impl Iterator::take_while
    - Some
    linkageType: ''
    returnType: Option
    signature: 'fn decode_iso8859_buf(buf: &[u8]) -> Option<Arc<String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - mss
    - _opts
    argTypes:
    - MediaSourceStream<'s>
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: Id3v1Reader::try_new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 1
    functionsReached:
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mss: MediaSourceStream<''s>, _opts: MetadataOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:117,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: Id3v1Reader::score
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:129,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:129,1
    - Dst: Id3v1Reader::try_new
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 130
      start: 122
    functionDepth: 10
    functionLinenumber: 122
    functionLinenumberEnd: 130
    functionName: Id3v1Reader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - Id3v1Reader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: MetadataOptions,)
      -> Result<Box<dyn MetadataReader + ''_>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_metadata
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: Id3v1Reader::probe_data
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_metadata
    linkageType: ''
    returnType: '&''static [ProbeMetadataData]'
    signature: fn probe_data() -> &'static [ProbeMetadataData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: Id3v1Reader::metadata_info
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MetadataInfo'
    signature: fn metadata_info(&self) -> &MetadataInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:143,1
    - Dst: read_id3v1
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:144,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:145,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:145,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v1.rs:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 16
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: Id3v1Reader::read_all
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 0
    functionsReached:
    - Self::build
    - MetadataBuilder::new
    - Vec::new
    - Ok
    - read_id3v1
    linkageType: ''
    returnType: Result
    signature: fn read_all(&mut self) -> Result<MetadataBuffer>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 153
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionName: Id3v1Reader::into_inner
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v1.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:187,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:190,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:194,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:197,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:200,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 201
      start: 185
    functionDepth: 13
    functionLinenumber: 185
    functionLinenumberEnd: 201
    functionName: ApeHeader::read_identity
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 2
    functionsReached:
    - Result::read_u32
    - symphonia_core::errors::unsupported_error
    - Result::read_buf_exact
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_identity<B: ReadBytes>(reader: &mut B) -> Result<ApeVersion>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ApeHeader::read_identity
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:205,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:208,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:209,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:210,1
    - Dst: Result::read_u64
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:211,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:232,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 233
      start: 204
    functionDepth: 14
    functionLinenumber: 204
    functionLinenumberEnd: 233
    functionName: ApeHeader::read
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 1
    functionsReached:
    - Result::read_u32
    - Result::read_u64
    - ApeHeader::read_identity
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBytes>(reader: &mut B) -> Result<ApeHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:253,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:259,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:262,1
    - Dst: read_key
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:266,1
    - Dst: ApeItemValue::String
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:271,1
    - Dst: read_utf8_value
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:271,1
    - Dst: ApeItemValue::Binary
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:273,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:273,1
    - Dst: ApeItemValue::Locator
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:275,1
    - Dst: read_utf8_value
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:275,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:277,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:281,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - reader
    - header
    argTypes:
    - '&mut B'
    - '&ApeHeader'
    constantsTouched: []
    func_position:
      end: 282
      start: 251
    functionDepth: 14
    functionLinenumber: 251
    functionLinenumberEnd: 282
    functionName: ApeItem::read
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::decode_error
    - Result::read_u32
    - read_utf8_value
    - ApeItemValue::Locator
    - Result::read_boxed_slice_exact
    - ApeItemValue::Binary
    - Ok
    - read_key
    - ApeItemValue::String
    linkageType: ''
    returnType: Result
    signature: 'fn read<B: ReadBytes>(reader: &mut B, header: &ApeHeader) -> Result<ApeItem>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ApeHeader::read_identity
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:294,1
    - Dst: Option::seek_buffered_rel
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:295,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - mss
    - _opts
    argTypes:
    - MediaSourceStream<'s>
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 298
      start: 292
    functionDepth: 14
    functionLinenumber: 292
    functionLinenumberEnd: 298
    functionName: ApeReader::try_new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 1
    functionsReached:
    - Ok
    - ApeHeader::read_identity
    - Option::seek_buffered_rel
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mut mss: MediaSourceStream<''s>, _opts: MetadataOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:303,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 304
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 304
    functionName: ApeReader::score
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:315,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:315,1
    - Dst: ApeReader::try_new
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 316
      start: 308
    functionDepth: 10
    functionLinenumber: 308
    functionLinenumberEnd: 316
    functionName: ApeReader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - ApeReader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: MetadataOptions,)
      -> Result<Box<dyn MetadataReader + ''_>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_metadata
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:321,1
    - Dst: symphonia_core::support_metadata
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 345
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 345
    functionName: ApeReader::probe_data
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_metadata
    linkageType: ''
    returnType: '&''static [ProbeMetadataData]'
    signature: fn probe_data() -> &'static [ProbeMetadataData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 354
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 354
    functionName: ApeReader::metadata_info
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: '&MetadataInfo'
    signature: fn metadata_info(&self) -> &MetadataInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:357,1
    - Dst: ApeReader::metadata_info
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:357,1
    - Dst: ApeHeader::read
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:360,1
    - Dst: seek
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:366,1
    - Dst: SeekFrom::Current
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:366,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:366,1
    - Dst: ApeHeader::read
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:371,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:380,1
    - Dst: ApeItem::read
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:387,1
    - Dst: to_ascii_lowercase
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:389,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:393,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:393,1
    - Dst: copied
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:393,1
    - Dst: try_parse_image_data
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:399,1
    - Dst: Self::add_visual
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:401,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:402,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:402,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:402,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:403,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:403,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:404,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:404,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:405,1
    - Dst: contains
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:418,1
    - Dst: split_terminator
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:419,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:419,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:419,1
    - Dst: collect
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:419,1
    - Dst: RawValue::StringList
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:420,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:420,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:423,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:426,1
    - Dst: Self::add_mapped_tags
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:429,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:429,1
    - Dst: ApeHeader::read
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:433,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:445,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:448,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:448,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:448,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 167
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 449
      start: 356
    functionDepth: 16
    functionLinenumber: 356
    functionLinenumberEnd: 449
    functionName: ApeReader::read_all
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 0
    functionsReached:
    - MetadataBuilder::new
    - ApeItem::read
    - get
    - as_str
    - Self::add_visual
    - Ok
    - symphonia_core::errors::decode_error
    - ApeReader::metadata_info
    - ApeHeader::read
    - Self::build
    - to_ascii_lowercase
    - map
    - collect
    - try_parse_image_data
    - i64::from
    - Some
    - Vec::new
    - Option::as_ref
    - Self::add_mapped_tags
    - copied
    - Result::to_string
    - Arc::new
    - SeekFrom::Current
    - contains
    - RawTag::new
    - split_terminator
    - RawValue::from
    - seek
    - RawValue::StringList
    - clone
    linkageType: ''
    returnType: Result
    signature: fn read_all(&mut self) -> Result<MetadataBuffer>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 456
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 456
    functionName: ApeReader::into_inner
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:461,1
    - Dst: char::from
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:464,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:464,1
    - Dst: text::filter::null
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:467,1
    - Dst: text::filter::ascii_text
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:474,1
    - Dst: String::push
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:475,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:479,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 480
      start: 459
    functionDepth: 14
    functionLinenumber: 459
    functionLinenumberEnd: 480
    functionName: read_key
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 1
    functionsReached:
    - text::filter::ascii_text
    - text::filter::null
    - Ok
    - Result::read_u8
    - String::push
    - char::from
    - String::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'fn read_key<B: ReadBytes>(reader: &mut B) -> Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::from_utf8
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:483,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:483,1
    - Dst: into_vec
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:483,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:484,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:485,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - reader
    - len
    argTypes:
    - '&mut B'
    - usize
    constantsTouched: []
    func_position:
      end: 487
      start: 482
    functionDepth: 13
    functionLinenumber: 482
    functionLinenumberEnd: 487
    functionName: read_utf8_value
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 1
    functionsReached:
    - String::from_utf8
    - Result::read_boxed_slice_exact
    - Ok
    - symphonia_core::errors::decode_error
    - into_vec
    linkageType: ''
    returnType: Result
    signature: 'fn read_utf8_value<B: ReadBytes>(reader: &mut B, len: usize) -> Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: utils::images::try_get_image_info
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:495,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:497,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:502,1
    - Dst: position
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:502,1
    - Dst: Result::split_at
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:504,1
    - Dst: split_first
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:506,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:506,1
    - Dst: utils::images::try_get_image_info
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:509,1
    - Dst: str::from_utf8
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:512,1
    - Dst: String::is_empty
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:513,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:514,1
    - Dst: String::to_string
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:514,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:516,1
    - Dst: String::clone
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:518,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:519,1
    - Dst: StandardTag::OriginalFile
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:519,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:522,1
    - Dst: into
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:527,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/ape.rs:527,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 52
    argCount: 2
    argNames:
    - buf
    - tags
    argTypes:
    - Box<[u8]>
    - '&mut Vec<Tag>'
    constantsTouched: []
    func_position:
      end: 534
      start: 489
    functionDepth: 11
    functionLinenumber: 489
    functionLinenumberEnd: 534
    functionName: try_parse_image_data
    functionSourceFile: /src/symphonia/symphonia-metadata/src/ape.rs
    functionUses: 1
    functionsReached:
    - String::clone
    - split_first
    - expect
    - String::to_string
    - utils::images::try_get_image_info
    - String::is_empty
    - Arc::new
    - Tag::new_from_parts
    - into
    - Some
    - Result::split_at
    - str::from_utf8
    - Result::iter
    - StandardTag::OriginalFile
    - position
    - push
    linkageType: ''
    returnType: (Box
    signature: 'fn try_parse_image_data(buf: Box<[u8]>, tags: &mut Vec<Tag>) -> (Box<[u8]>,
      Option<ImageInfo>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - major_version
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 218
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 218
    functionName: min_frame_size
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: 'pub fn min_frame_size(major_version: u8) -> u64'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:416,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:416,1
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:420,1
    - Dst: all
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:420,1
    - Dst: Option::is_ascii_uppercase
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:420,1
    - Dst: Option::is_ascii_digit
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:420,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - id
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 421
      start: 414
    functionDepth: 11
    functionLinenumber: 414
    functionLinenumberEnd: 421
    functionName: validate_frame_id
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 3
    functionsReached:
    - all
    - Option::is_ascii_uppercase
    - Result::iter
    - Option::is_ascii_digit
    - Result::len
    linkageType: ''
    returnType: bool
    signature: 'fn validate_frame_id(id: &[u8]) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::str::from_utf8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:427,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - id
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 428
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 428
    functionName: from_ascii
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 0
    functionsReached:
    - std::str::from_utf8
    - expect
    linkageType: ''
    returnType: '&str'
    signature: 'fn from_ascii(id: &[u8]) -> &str'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 433
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 433
    functionName: null_frame_reader
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: (FrameReader, Option
    signature: fn null_frame_reader() -> (FrameReader, Option<RawTagParser>)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:437,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:437,1
    - Dst: '&''static [ProbeFormatData]::to_owned'
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:437,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:437,1
    - Dst: null_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - id
    argTypes:
    - '[u8; 4]'
    constantsTouched: []
    func_position:
      end: 438
      start: 436
    functionDepth: 9
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionName: find_frame_reader
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 3
    functionsReached:
    - get
    - null_frame_reader
    - unwrap_or_else
    - map
    - '&''static [ProbeFormatData]::to_owned'
    linkageType: ''
    returnType: (FrameReader, Option
    signature: 'fn find_frame_reader(id: [u8; 4]) -> (FrameReader, Option<RawTagParser>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:443,1
    - Dst: find_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:444,1
    - Dst: null_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:445,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - id
    argTypes:
    - '[u8; 3]'
    constantsTouched: []
    func_position:
      end: 447
      start: 442
    functionDepth: 10
    functionLinenumber: 442
    functionLinenumberEnd: 447
    functionName: find_legacy_frame_reader
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 1
    functionsReached:
    - get
    - null_frame_reader
    - find_frame_reader
    linkageType: ''
    returnType: (FrameReader, Option
    signature: 'fn find_legacy_frame_reader(id: [u8; 3]) -> (FrameReader, Option<RawTagParser>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_triple_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:451,1
    - Dst: validate_frame_id
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:456,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:463,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:466,1
    - Dst: Result::read_be_u24
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:466,1
    - Dst: find_legacy_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:469,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:474,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:478,1
    - Dst: FrameInfo::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:481,1
    - Dst: read_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:484,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:484,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:485,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:489,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 492
      start: 450
    functionDepth: 13
    functionLinenumber: 450
    functionLinenumberEnd: 492
    functionName: read_id3v2p2_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 3
    functionsReached:
    - FrameInfo::new
    - u64::from
    - find_legacy_frame_reader
    - Result::read_be_u24
    - Result::read_boxed_slice_exact
    - validate_frame_id
    - BufReader::new
    - read_frame
    - Ok
    - Result::read_triple_bytes
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_id3v2p2_frame<B: ReadBytes>(reader: &mut B) -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:496,1
    - Dst: validate_frame_id
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:501,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:508,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:512,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:515,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:519,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:535,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:542,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:542,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:546,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:546,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:550,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:550,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:554,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:554,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:557,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:563,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:567,1
    - Dst: find_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:572,1
    - Dst: null_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:572,1
    - Dst: FrameInfo::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:575,1
    - Dst: read_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:578,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:578,1
    - Dst: append_tag_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:582,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:584,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:589,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 105
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 592
      start: 495
    functionDepth: 13
    functionLinenumber: 495
    functionLinenumberEnd: 592
    functionName: read_id3v2p3_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 3
    functionsReached:
    - FrameInfo::new
    - u64::from
    - Result::read_quad_bytes
    - Some
    - Result::read_be_u16
    - null_frame_reader
    - Result::read_byte
    - read_frame
    - append_tag_sub_fields
    - Result::read_boxed_slice_exact
    - validate_frame_id
    - BufReader::new
    - find_frame_reader
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_be_u32
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_id3v2p3_frame<B: ReadBytes>(reader: &mut B) -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:596,1
    - Dst: validate_frame_id
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:600,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:607,1
    - Dst: id3v2::unsync::read_syncsafe_leq32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:611,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:614,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:618,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:629,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:640,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:648,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:648,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:652,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:652,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:662,1
    - Dst: id3v2::unsync::read_syncsafe_leq32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:662,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:666,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:666,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:669,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:675,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:679,1
    - Dst: find_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:684,1
    - Dst: null_frame_reader
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:684,1
    - Dst: FrameInfo::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:687,1
    - Dst: id3v2::unsync::decode_unsynchronisation
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:693,1
    - Dst: read_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:695,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:695,1
    - Dst: read_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:699,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:699,1
    - Dst: append_tag_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:707,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:709,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:714,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 120
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 717
      start: 595
    functionDepth: 13
    functionLinenumber: 595
    functionLinenumberEnd: 717
    functionName: read_id3v2p4_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 3
    functionsReached:
    - FrameInfo::new
    - id3v2::unsync::read_syncsafe_leq32
    - u64::from
    - Result::read_quad_bytes
    - Some
    - Result::read_be_u16
    - null_frame_reader
    - Result::read_byte
    - read_frame
    - append_tag_sub_fields
    - Result::read_boxed_slice_exact
    - validate_frame_id
    - id3v2::unsync::decode_unsynchronisation
    - BufReader::new
    - find_frame_reader
    - Ok
    - symphonia_core::errors::decode_error
    - Result::ignore_bytes
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_id3v2p4_frame<B: ReadBytes + FiniteStream>(reader: &mut
      B) -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: take
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:723,1
    - Dst: unwrap_or_default
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:723,1
    - Dst: into_vec
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:723,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:726,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:726,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:726,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:730,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:730,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:730,1
    - Dst: replace
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:734,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:734,1
    - Dst: add_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:738,1
    - Dst: iter_mut
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:739,1
    - Dst: for_each
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs:739,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 38
    argCount: 3
    argNames:
    - result
    - grp_id
    - enc_id
    argTypes:
    - '&mut FrameResult'
    - Option<u8>
    - Option<u8>
    constantsTouched: []
    func_position:
      end: 742
      start: 719
    functionDepth: 15
    functionLinenumber: 719
    functionLinenumberEnd: 742
    functionName: append_tag_sub_fields
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
    functionUses: 2
    functionsReached:
    - unwrap_or_default
    - RawTagSubField::new
    - replace
    - for_each
    - take
    - Self::into_boxed_slice
    - RawValue::from
    - iter_mut
    - Self::push
    - add_sub_fields
    - into_vec
    linkageType: ''
    returnType: void
    signature: 'fn append_tag_sub_fields(result: &mut FrameResult, grp_id: Option<u8>,
      enc_id: Option<u8>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_triple_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:104,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:107,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:110,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:111,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:112,1
    - Dst: unsync::read_syncsafe_leq32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:113,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:127,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:133,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:141,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:159,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 78
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 160
      start: 103
    functionDepth: 13
    functionLinenumber: 103
    functionLinenumberEnd: 160
    functionName: read_id3v2_header
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::unsupported_error
    - Result::read_u8
    - unsync::read_syncsafe_leq32
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_triple_bytes
    linkageType: ''
    returnType: Result
    signature: 'fn read_id3v2_header<B: ReadBytes>(reader: &mut B) -> Result<Header>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:164,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:165,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:166,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:169,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:173,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:181,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:181,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:184,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 185
      start: 163
    functionDepth: 14
    functionLinenumber: 163
    functionLinenumberEnd: 185
    functionName: read_id3v2p3_extended_header
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 1
    functionsReached:
    - Some
    - Result::read_be_u16
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'fn read_id3v2p3_extended_header<B: ReadBytes>(reader: &mut B) -> Result<ExtendedHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: unsync::read_syncsafe_leq32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:189,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:191,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:192,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:195,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:200,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:206,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:208,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:211,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:216,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:218,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:221,1
    - Dst: unsync::read_syncsafe_leq32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:221,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:226,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:228,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:231,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:269,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:278,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 91
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 279
      start: 188
    functionDepth: 15
    functionLinenumber: 188
    functionLinenumberEnd: 279
    functionName: read_id3v2p4_extended_header
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 1
    functionsReached:
    - Result::read_u8
    - Some
    - Ok
    - symphonia_core::errors::decode_error
    - unsync::read_syncsafe_leq32
    linkageType: ''
    returnType: Result
    signature: 'fn read_id3v2p4_extended_header<B: ReadBytes>(reader: &mut B) -> Result<ExtendedHeader>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_id3v2p3_extended_header
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:290,1
    - Dst: read_id3v2p4_extended_header
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:291,1
    - Dst: min_frame_size
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:297,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:299,1
    - Dst: read_id3v2p2_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:304,1
    - Dst: read_id3v2p3_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:305,1
    - Dst: read_id3v2p4_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:306,1
    - Dst: Metadata::add_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:317,1
    - Dst: Metadata::add_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:322,1
    - Dst: Metadata::add_visual
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:327,1
    - Dst: Result::add_chapter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:331,1
    - Dst: Result::add_toc
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:335,1
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:348,1
    - Dst: Result::build
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:354,1
    - Dst: '&mut Vec<MetadataSideData>::push'
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:355,1
    - Dst: MetadataSideData::Chapters
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:355,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:358,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 4
    argNames:
    - reader
    - header
    - metadata
    - side_data
    argTypes:
    - '&mut B'
    - '&Header'
    - '&mut MetadataBuilder'
    - '&mut Vec<MetadataSideData>'
    constantsTouched: []
    func_position:
      end: 359
      start: 281
    functionDepth: 15
    functionLinenumber: 281
    functionLinenumberEnd: 359
    functionName: read_id3v2_body
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 1
    functionsReached:
    - Result::build
    - read_id3v2p3_extended_header
    - Metadata::add_tag
    - Ok
    - Result::add_toc
    - read_id3v2p2_frame
    - read_id3v2p3_frame
    - '&mut Vec<MetadataSideData>::push'
    - read_id3v2p4_frame
    - read_id3v2p4_extended_header
    - Metadata::add_visual
    - MetadataSideData::Chapters
    - Default::default
    - min_frame_size
    - Result::bytes_available
    - Result::add_chapter
    linkageType: ''
    returnType: Result
    signature: 'fn read_id3v2_body<B: ReadBytes + FiniteStream>(reader: &mut B,header:
      &Header,metadata: &mut MetadataBuilder,side_data: &mut Vec<MetadataSideData>,)
      -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_id3v2_header
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:367,1
    - Dst: UnsyncStream::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:372,1
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:372,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:372,1
    - Dst: read_id3v2_body
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:374,1
    - Dst: Self::into_inner
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:376,1
    - Dst: ScopedStream::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:381,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:381,1
    - Dst: read_id3v2_body
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:383,1
    - Dst: Self::ignore
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:389,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:391,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 3
    argNames:
    - reader
    - metadata
    - side_data
    argTypes:
    - '&mut B'
    - '&mut MetadataBuilder'
    - '&mut Vec<MetadataSideData>'
    constantsTouched: []
    func_position:
      end: 392
      start: 361
    functionDepth: 14
    functionLinenumber: 361
    functionLinenumberEnd: 392
    functionName: read_id3v2
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 2
    functionsReached:
    - read_id3v2_body
    - u64::from
    - UnsyncStream::new
    - read_id3v2_header
    - ScopedStream::new
    - Self::into_inner
    - Ok
    - Self::ignore
    linkageType: ''
    returnType: Result
    signature: 'pub(crate) fn read_id3v2<B: ReadBytes>(reader: &mut B,metadata: &mut
      MetadataBuilder,side_data: &mut Vec<MetadataSideData>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:419,1
    - Dst: clear
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 421
      start: 416
    functionDepth: 1
    functionLinenumber: 416
    functionLinenumberEnd: 421
    functionName: ChapterGroupBuilder::error
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 2
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: fn error(&mut self)
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: contains_key
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:424,1
    - Dst: contains_key
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - id
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 425
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 425
    functionName: ChapterGroupBuilder::is_unique_key
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 2
    functionsReached:
    - contains_key
    linkageType: ''
    returnType: bool
    signature: 'fn is_unique_key(&self, id: &str) -> bool'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ChapterGroupBuilder::is_unique_key
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:430,1
    - Dst: ChapterGroupBuilder::error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:432,1
    - Dst: is_some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:437,1
    - Dst: ChapterGroupBuilder::error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:439,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:441,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:441,1
    - Dst: insert
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:444,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:444,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 38
    argCount: 1
    argNames:
    - toc
    argTypes:
    - Id3v2TableOfContents
    constantsTouched: []
    func_position:
      end: 445
      start: 428
    functionDepth: 2
    functionLinenumber: 428
    functionLinenumberEnd: 445
    functionName: ChapterGroupBuilder::add_toc
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - insert
    - Some
    - is_some
    - to_string
    - ChapterGroupBuilder::is_unique_key
    - ChapterGroupBuilder::error
    linkageType: ''
    returnType: void
    signature: 'fn add_toc(&mut self, toc: Id3v2TableOfContents)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: ChapterGroupBuilder::is_unique_key
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:450,1
    - Dst: ChapterGroupBuilder::error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:452,1
    - Dst: len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:457,1
    - Dst: insert
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:459,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 1
    argNames:
    - chap
    argTypes:
    - Id3v2Chapter
    constantsTouched: []
    func_position:
      end: 460
      start: 448
    functionDepth: 2
    functionLinenumber: 448
    functionLinenumberEnd: 460
    functionName: ChapterGroupBuilder::add_chapter
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - insert
    - len
    - to_string
    - ChapterGroupBuilder::is_unique_key
    - ChapterGroupBuilder::error
    linkageType: ''
    returnType: void
    signature: 'fn add_chapter(&mut self, mut chap: Id3v2Chapter)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut HashMap<String, Id3v2TableOfContents>::remove'
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:472,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:472,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:474,1
    - Dst: len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:474,1
    - Dst: '&mut HashMap<String, Id3v2Chapter>::remove'
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:480,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:482,1
    - Dst: ChapterGroupItem::Chapter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:482,1
    - Dst: dfs
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:484,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:486,1
    - Dst: ChapterGroupItem::Group
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 35
    argCount: 3
    argNames:
    - id
    - tocs
    - chaps
    argTypes:
    - '&str'
    - '&mut HashMap<String, Id3v2TableOfContents>'
    - '&mut HashMap<String, Id3v2Chapter>'
    constantsTouched: []
    func_position:
      end: 496
      start: 465
    functionDepth: 9
    functionLinenumber: 465
    functionLinenumberEnd: 496
    functionName: C::h::a::p::t::e::r::G::r::o::u::p::B::u::i::l::d::e::r::::::::b::u::i::l::d::dfs
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - push
    - ChapterGroupItem::Chapter
    - len
    - '&mut HashMap<String, Id3v2TableOfContents>::remove'
    - ChapterGroupItem::Group
    - map
    - dfs
    - '&mut HashMap<String, Id3v2Chapter>::remove'
    - Vec::with_capacity
    linkageType: ''
    returnType: Option
    signature: 'fn dfs(id: &str,tocs: &mut HashMap<String, Id3v2TableOfContents>,chaps:
      &mut HashMap<String, Id3v2Chapter>,) -> Option<ChapterGroup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: and_then
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:504,1
    - Dst: dfs
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:504,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:509,1
    - Dst: values
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:512,1
    - Dst: remove
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:514,1
    - Dst: clear
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:518,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:524,1
    - Dst: into_values
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:526,1
    - Dst: collect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:526,1
    - Dst: sort_by_key
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:529,1
    - Dst: into_iter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:533,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:533,1
    - Dst: ChapterGroupItem::Chapter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:533,1
    - Dst: collect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:533,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:537,1
    - Dst: ChapterGroupItem::Group
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:537,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:540,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 107
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 545
      start: 463
    functionDepth: 10
    functionLinenumber: 463
    functionLinenumberEnd: 545
    functionName: ChapterGroupBuilder::build
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - ChapterGroupItem::Chapter
    - into_iter
    - ChapterGroupItem::Group
    - Some
    - into_values
    - collect
    - map
    - and_then
    - dfs
    - sort_by_key
    - clear
    - remove
    - values
    - is_empty
    - push
    linkageType: ''
    returnType: Option
    signature: fn build(mut self) -> Option<ChapterGroup>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - mss
    - _opts
    argTypes:
    - MediaSourceStream<'s>
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 559
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 559
    functionName: Id3v2Reader::try_new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 1
    functionsReached:
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn try_new(mss: MediaSourceStream<''s>, _opts: MetadataOptions)
      -> Result<Self>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:564,1
    - Dst: Score::Supported
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _src
    argTypes:
    - ScopedStream<&mut MediaSourceStream<'_>>
    constantsTouched: []
    func_position:
      end: 565
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 565
    functionName: Id3v2Reader::score
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Score::Supported
    linkageType: ''
    returnType: Result
    signature: 'fn score(_src: ScopedStream<&mut MediaSourceStream<''_>>) -> Result<Score>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:576,1
    - Dst: Box::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:576,1
    - Dst: Id3v2Reader::try_new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:576,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mss
    - opts
    argTypes:
    - MediaSourceStream<'_>
    - MetadataOptions
    constantsTouched: []
    func_position:
      end: 577
      start: 569
    functionDepth: 10
    functionLinenumber: 569
    functionLinenumberEnd: 577
    functionName: Id3v2Reader::try_probe_new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - Ok
    - Box::new
    - Id3v2Reader::try_new
    linkageType: ''
    returnType: Result
    signature: 'fn try_probe_new(mss: MediaSourceStream<''_>,opts: MetadataOptions,)
      -> Result<Box<dyn MetadataReader + ''_>>whereSelf: Sized,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: symphonia_core::support_metadata
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 581
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionName: Id3v2Reader::probe_data
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - symphonia_core::support_metadata
    linkageType: ''
    returnType: '&''static [ProbeMetadataData]'
    signature: fn probe_data() -> &'static [ProbeMetadataData]
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 587
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 587
    functionName: Id3v2Reader::metadata_info
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: '&MetadataInfo'
    signature: fn metadata_info(&self) -> &MetadataInfo
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:590,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:591,1
    - Dst: read_id3v2
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:593,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:595,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs:595,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 596
      start: 589
    functionDepth: 16
    functionLinenumber: 589
    functionLinenumberEnd: 596
    functionName: Id3v2Reader::read_all
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached:
    - Self::build
    - MetadataBuilder::new
    - read_id3v2
    - Vec::new
    - Ok
    linkageType: ''
    returnType: Result
    signature: fn read_all(&mut self) -> Result<MetadataBuffer>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - Box<Self>
    constantsTouched: []
    func_position:
      end: 603
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 603
    functionName: Id3v2Reader::into_inner
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MediaSourceStream
    signature: 'fn into_inner<''s>(self: Box<Self>) -> MediaSourceStream<''s>whereSelf:
      ''s,'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: min
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:21,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:25,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:25,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:28,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 2
    argNames:
    - reader
    - bit_width
    argTypes:
    - '&mut B'
    - u8
    constantsTouched: []
    func_position:
      end: 29
      start: 13
    functionDepth: 14
    functionLinenumber: 13
    functionLinenumberEnd: 29
    functionName: read_syncsafe_leq32
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 3
    functionsReached:
    - min
    - Result::read_u8
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_syncsafe_leq32<B: ReadBytes>(reader: &mut B, bit_width:
      u8) -> Result<u32>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:32,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 53
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 53
    functionName: decode_unsynchronisation
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 1
    functionsReached:
    - Result::len
    linkageType: ''
    returnType: '&mut [u8]'
    signature: 'pub fn decode_unsynchronisation(buf: &mut [u8]) -> &mut [u8]'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - inner
    argTypes:
    - B
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: UnsyncStream::new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(inner: B) -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: UnsyncStream::into_inner
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: B
    signature: pub fn into_inner(self) -> B
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: byte_len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: UnsyncStream::byte_len
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - byte_len
    linkageType: ''
    returnType: u64
    signature: fn byte_len(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bytes_read
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: UnsyncStream::bytes_read
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - bytes_read
    linkageType: ''
    returnType: u64
    signature: fn bytes_read(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: UnsyncStream::bytes_available
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - bytes_available
    linkageType: ''
    returnType: u64
    signature: fn bytes_available(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:92,1
    - Dst: read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:97,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:100,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 101
      start: 89
    functionDepth: 13
    functionLinenumber: 89
    functionLinenumberEnd: 101
    functionName: UnsyncStream::read_byte
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 4
    functionsReached:
    - Ok
    - read_byte
    linkageType: ''
    returnType: io::Result
    signature: fn read_byte(&mut self) -> io::Result<u8>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:104,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:104,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 14
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: UnsyncStream::read_double_bytes
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - Ok
    - UnsyncStream::read_byte
    linkageType: ''
    returnType: io::Result
    signature: fn read_double_bytes(&mut self) -> io::Result<[u8; 2]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:108,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:108,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:108,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:108,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 14
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: UnsyncStream::read_triple_bytes
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - Ok
    - UnsyncStream::read_byte
    linkageType: ''
    returnType: io::Result
    signature: fn read_triple_bytes(&mut self) -> io::Result<[u8; 3]>
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:112,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:112,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:112,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:112,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:112,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 14
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: UnsyncStream::read_quad_bytes
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - Ok
    - UnsyncStream::read_byte
    linkageType: ''
    returnType: io::Result
    signature: fn read_quad_bytes(&mut self) -> io::Result<[u8; 4]>
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames: []
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: UnsyncStream::read_buf
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf(&mut self, _: &mut [u8]) -> io::Result<usize>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:121,1
    - Dst: read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:125,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:129,1
    - Dst: UnsyncStream::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:156,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:161,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 60
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&mut [u8]'
    constantsTouched: []
    func_position:
      end: 162
      start: 120
    functionDepth: 13
    functionLinenumber: 120
    functionLinenumberEnd: 162
    functionName: UnsyncStream::read_buf_exact
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - UnsyncStream::read_byte
    - Ok
    - read_buf_exact
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_buf_exact(&mut self, buf: &mut [u8]) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames: []
    argTypes:
    - '&[u8]'
    - usize
    - '&''a mut [u8]'
    constantsTouched: []
    func_position:
      end: 172
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 172
    functionName: UnsyncStream::scan_bytes_aligned
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: io::Result
    signature: 'fn scan_bytes_aligned<''a>(&mut self,_: &[u8],_: usize,_: &''a mut
      [u8],) -> io::Result<&''a mut [u8]>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:176,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - count
    argTypes:
    - u64
    constantsTouched: []
    func_position:
      end: 179
      start: 174
    functionDepth: 13
    functionLinenumber: 174
    functionLinenumberEnd: 179
    functionName: UnsyncStream::ignore_bytes
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - Ok
    - read_byte
    linkageType: ''
    returnType: io::Result
    signature: 'fn ignore_bytes(&mut self, count: u64) -> io::Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: UnsyncStream::pos
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: fn pos(&self) -> u64
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:194,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:201,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:204,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 209
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 209
    functionName: tests::verify_read_syncsafe_leq32
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
    functionUses: 0
    functionsReached:
    - BufReader::new
    linkageType: ''
    returnType: void
    signature: fn verify_read_syncsafe_leq32()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: std::str::from_utf8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:58,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - id
    - major_version
    - raw_tag_parser
    argTypes:
    - '&''a [u8]'
    - u8
    - Option<RawTagParser>
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: FrameInfo::new
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 3
    functionsReached:
    - std::str::from_utf8
    - expect
    linkageType: ''
    returnType: Self
    signature: 'pub fn new(id: &''a [u8], major_version: u8, raw_tag_parser: Option<RawTagParser>)
      -> Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:83,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:85,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:87,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - encoding
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: Encoding::parse
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 1
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'fn parse(encoding: u8) -> Option<Encoding>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: decode_id3v2_iso8859_1
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:106,1
    - Dst: impl Iterator::collect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:106,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:110,1
    - Dst: into_owned
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:110,1
    - Dst: text::decode_utf16be_lossy
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:115,1
    - Dst: impl Iterator::collect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - buf
    - encoding
    argTypes:
    - '&[u8]'
    - Encoding
    constantsTouched: []
    func_position:
      end: 118
      start: 101
    functionDepth: 12
    functionLinenumber: 101
    functionLinenumberEnd: 118
    functionName: decode_string_buf
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 1
    functionsReached:
    - into_owned
    - impl Iterator::collect
    - text::decode_utf16be_lossy
    - String::from_utf8_lossy
    - decode_id3v2_iso8859_1
    linkageType: ''
    returnType: String
    signature: 'fn decode_string_buf(buf: &[u8], encoding: Encoding) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::iter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:121,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:121,1
    - Dst: char::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 131
      start: 120
    functionDepth: 11
    functionLinenumber: 120
    functionLinenumberEnd: 131
    functionName: decode_id3v2_iso8859_1
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 1
    functionsReached:
    - char::from
    - Result::iter
    - map
    linkageType: ''
    returnType: impl Iterator
    signature: 'fn decode_id3v2_iso8859_1(buf: &[u8]) -> impl Iterator<Item = char>
      + ''_'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:140,1
    - Dst: iter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:143,1
    - Dst: any
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:143,1
    - Dst: Result::is_ascii_digit
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:143,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:144,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:148,1
    - Dst: str::from_utf8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:148,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:148,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut BufReader<''_>'
    constantsTouched: []
    func_position:
      end: 149
      start: 137
    functionDepth: 13
    functionLinenumber: 137
    functionLinenumberEnd: 149
    functionName: read_date
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 2
    functionsReached:
    - expect
    - any
    - Result::is_ascii_digit
    - Result::read_buf_exact
    - iter
    - str::from_utf8
    - to_string
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn read_date(reader: &mut BufReader<''_>) -> Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Encoding::parse
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:153,1
    - Dst: Result::read_byte
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:153,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:154,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut BufReader<''_>'
    constantsTouched: []
    func_position:
      end: 157
      start: 152
    functionDepth: 13
    functionLinenumber: 152
    functionLinenumberEnd: 157
    functionName: read_encoding
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 12
    functionsReached:
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_byte
    - Encoding::parse
    linkageType: ''
    returnType: Result
    signature: 'fn read_encoding(reader: &mut BufReader<''_>) -> Result<Encoding>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_triple_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:165,1
    - Dst: symphonia_core::errors::Result::iter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:167,1
    - Dst: any
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:167,1
    - Dst: Result::is_ascii_alphabetic
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:167,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:168,1
    - Dst: symphonia_core::errors::Result::eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:171,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:177,1
    - Dst: std::str::from_utf8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:178,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:178,1
    - Dst: to_ascii_lowercase
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:178,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:184,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut BufReader<''_>'
    constantsTouched: []
    func_position:
      end: 185
      start: 164
    functionDepth: 13
    functionLinenumber: 164
    functionLinenumberEnd: 185
    functionName: read_lang_code
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 3
    functionsReached:
    - expect
    - any
    - Result::is_ascii_alphabetic
    - to_ascii_lowercase
    - std::str::from_utf8
    - symphonia_core::errors::Result::iter
    - Some
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_triple_bytes
    - symphonia_core::errors::Result::eq_ignore_ascii_case
    linkageType: ''
    returnType: Result
    signature: 'fn read_lang_code(reader: &mut BufReader<''_>) -> Result<Option<String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:189,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:193,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:198,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:205,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:211,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:213,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:213,1
    - Dst: u64::from_be_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:213,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut BufReader<''_>'
    constantsTouched: []
    func_position:
      end: 214
      start: 188
    functionDepth: 13
    functionLinenumber: 188
    functionLinenumberEnd: 214
    functionName: read_play_counter
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 2
    functionsReached:
    - symphonia_core::errors::unsupported_error
    - Result::read_buf_exact
    - Some
    - u64::from_be_bytes
    - Ok
    - symphonia_core::errors::decode_error
    - Result::bytes_available
    linkageType: ''
    returnType: Result
    signature: 'fn read_play_counter(reader: &mut BufReader<''_>) -> Result<Option<u64>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:220,1
    - Dst: Result::scan_bytes_aligned_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:225,1
    - Dst: Result::last
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:227,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:228,1
    - Dst: Result::scan_bytes_aligned_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:234,1
    - Dst: last_chunk::<2>
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:236,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:237,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:243,1
    - Dst: decode_string_buf
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 2
    argNames:
    - reader
    - encoding
    argTypes:
    - '&mut BufReader<''_>'
    - Encoding
    constantsTouched: []
    func_position:
      end: 244
      start: 219
    functionDepth: 13
    functionLinenumber: 219
    functionLinenumberEnd: 244
    functionName: read_string
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 24
    functionsReached:
    - Ok
    - Result::scan_bytes_aligned_ref
    - last_chunk::<2>
    - decode_string_buf
    - Result::last
    - Result::bytes_available
    - Result::len
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_string(reader: &mut BufReader<''_>, encoding: Encoding) ->
      io::Result<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:251,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:251,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:251,1
    - Dst: filter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:251,1
    - Dst: bool::is_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - reader
    - encoding
    argTypes:
    - '&mut BufReader<''_>'
    - Encoding
    constantsTouched: []
    func_position:
      end: 252
      start: 247
    functionDepth: 14
    functionLinenumber: 247
    functionLinenumberEnd: 252
    functionName: read_string_ignore_empty
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 6
    functionsReached:
    - bool::is_empty
    - Some
    - filter
    - read_string
    - Ok
    linkageType: ''
    returnType: io::Result
    signature: 'fn read_string_ignore_empty(reader: &mut BufReader<''_>,encoding:
      Encoding,) -> io::Result<Option<String>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:257,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:260,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:260,1
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:263,1
    - Dst: Result::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:264,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:264,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:267,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:269,1
    - Dst: Result::remove
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:269,1
    - Dst: RawValue::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:270,1
    - Dst: Result::into_vec
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:270,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - reader
    - encoding
    argTypes:
    - '&mut BufReader<''_>'
    - Encoding
    constantsTouched: []
    func_position:
      end: 274
      start: 255
    functionDepth: 15
    functionLinenumber: 255
    functionLinenumberEnd: 274
    functionName: read_string_list
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 3
    functionsReached:
    - Result::push
    - RawValue::from
    - Result::remove
    - read_string
    - Result::into_vec
    - Ok
    - Default::default
    - Result::bytes_available
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'fn read_string_list(reader: &mut BufReader<''_>, encoding: Encoding)
      -> Result<RawValue>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:282,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:284,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:286,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:288,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:297,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:297,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:299,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:299,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:299,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 300
      start: 280
    functionDepth: 14
    functionLinenumber: 280
    functionLinenumberEnd: 300
    functionName: read_aenc_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Self::into_boxed_slice
    - Result::read_be_u16
    - RawTag::new_with_sub_fields
    - read_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_aenc_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:305,1
    - Dst: Result::read_triple_bytes
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:310,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:311,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:312,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:313,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:314,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:310,1
    - Dst: Result::to_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:317,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:321,1
    - Dst: utils::id3v2::get_visual_key_from_picture_type
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:325,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:325,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:325,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:330,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:331,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:331,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:331,1
    - Dst: StandardTag::Description
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:331,1
    - Dst: Arc::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:331,1
    - Dst: Box::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:336,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:336,1
    - Dst: utils::images::try_get_image_info
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:339,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:342,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:342,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:342,1
    - Dst: or
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:342,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:343,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:343,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:344,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:344,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:350,1
    - Dst: FrameResult::Visual
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:350,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 70
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 351
      start: 303
    functionDepth: 14
    functionLinenumber: 303
    functionLinenumberEnd: 351
    functionName: read_apic_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - Box::from
    - or
    - read_string_ignore_empty
    - Result::read_buf_bytes_available_ref
    - Arc::from
    - Ok
    - StandardTag::Description
    - push
    - Tag::new_from_parts
    - map
    - Result::read_triple_bytes
    - u32::from
    - read_encoding
    - utils::images::try_get_image_info
    - Result::read_u8
    - Some
    - FrameResult::Visual
    - Option::as_ref
    - Result::to_string
    - utils::id3v2::get_visual_key_from_picture_type
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_apic_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:356,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:358,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:360,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:362,1
    - Dst: Box::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:364,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:364,1
    - Dst: EbmlError::iter_mut
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:369,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:382,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:382,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:384,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:384,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:384,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 51
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 385
      start: 354
    functionDepth: 14
    functionLinenumber: 354
    functionLinenumberEnd: 385
    functionName: read_atxt_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - Box::from
    - read_encoding
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Result::read_u8
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - read_string
    - EbmlError::iter_mut
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_atxt_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:394,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:397,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:399,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:401,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:403,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:403,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:406,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:408,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:408,1
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:415,1
    - Dst: min_frame_size
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:415,1
    - Dst: read_id3v2p2_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:417,1
    - Dst: read_id3v2p3_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:418,1
    - Dst: read_id3v2p4_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:419,1
    - Dst: extend
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:424,1
    - Dst: take
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:428,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:429,1
    - Dst: StandardTag::ChapterTitle
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:429,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:430,1
    - Dst: StandardTag::Description
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:430,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:434,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:436,1
    - Dst: Time::from_millis
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:445,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:445,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:446,1
    - Dst: Time::from_millis
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:446,1
    - Dst: i64::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:446,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:454,1
    - Dst: FrameResult::Chapter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:454,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 66
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 455
      start: 388
    functionDepth: 14
    functionLinenumber: 388
    functionLinenumberEnd: 455
    functionName: read_chap_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - u64::from
    - StandardTag::ChapterTitle
    - i64::from
    - Some
    - read_id3v2p2_frame
    - take
    - StandardTag::Description
    - FrameResult::Chapter
    - read_id3v2p3_frame
    - Time::from_millis
    - read_id3v2p4_frame
    - read_string
    - extend
    - Ok
    - min_frame_size
    - Result::read_be_u32
    - Result::bytes_available
    - push
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_chap_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:460,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:462,1
    - Dst: read_lang_code
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:465,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:466,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:466,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:470,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:471,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:471,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:476,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:479,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:479,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:481,1
    - Dst: map_raw_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:481,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:481,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 482
      start: 458
    functionDepth: 14
    functionLinenumber: 458
    functionLinenumberEnd: 482
    functionName: read_comm_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - RawTagSubField::new
    - read_string_ignore_empty
    - Self::into_boxed_slice
    - Some
    - Vec::new
    - map_raw_tag
    - RawTag::new_with_sub_fields
    - Self::push
    - read_string
    - Ok
    - read_lang_code
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_comm_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:487,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:490,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:515,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:517,1
    - Dst: '&''a [u8]::is_empty'
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:519,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:522,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:522,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:525,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:525,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:529,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:529,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:531,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:531,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:531,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 532
      start: 485
    functionDepth: 14
    functionLinenumber: 485
    functionLinenumberEnd: 532
    functionName: read_comr_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - RawTagSubField::new
    - read_string_ignore_empty
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - '&''a [u8]::is_empty'
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - Self::push
    - read_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_comr_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:536,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:540,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:544,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:545,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:550,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:550,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:554,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:554,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:556,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:556,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:556,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 557
      start: 535
    functionDepth: 15
    functionLinenumber: 535
    functionLinenumberEnd: 557
    functionName: read_crm_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - RawTagSubField::new
    - read_string_ignore_empty
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - Self::push
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_crm_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:566,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:572,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:574,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:577,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:577,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:580,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:581,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:585,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:586,1
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:588,1
    - Dst: min_frame_size
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:588,1
    - Dst: read_id3v2p2_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:590,1
    - Dst: read_id3v2p3_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:591,1
    - Dst: read_id3v2p4_frame
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:592,1
    - Dst: extend
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:597,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:598,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:599,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:613,1
    - Dst: FrameResult::TableOfContents
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:613,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 54
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 614
      start: 560
    functionDepth: 14
    functionLinenumber: 560
    functionLinenumberEnd: 614
    functionName: read_ctoc_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - usize::from
    - FrameResult::TableOfContents
    - Result::read_u8
    - read_id3v2p2_frame
    - Vec::new
    - read_id3v2p3_frame
    - read_id3v2p4_frame
    - read_string
    - Ok
    - min_frame_size
    - extend
    - Result::bytes_available
    - Vec::with_capacity
    - push
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_ctoc_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:619,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:621,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:623,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:631,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:631,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:633,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:633,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:633,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 634
      start: 617
    functionDepth: 14
    functionLinenumber: 617
    functionLinenumberEnd: 634
    functionName: read_encr_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Result::read_u8
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - read_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_encr_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:639,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:641,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:643,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:645,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:647,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:649,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:651,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:651,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:654,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:654,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:658,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:658,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:662,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:662,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:664,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:664,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:664,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 38
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 665
      start: 637
    functionDepth: 14
    functionLinenumber: 637
    functionLinenumberEnd: 665
    functionName: read_geob_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - RawTagSubField::new
    - read_string_ignore_empty
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Self::into_boxed_slice
    - Vec::new
    - RawTag::new_with_sub_fields
    - Self::push
    - read_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_geob_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:670,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:672,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:674,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:682,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:682,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:684,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:684,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:684,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 685
      start: 668
    functionDepth: 14
    functionLinenumber: 668
    functionLinenumberEnd: 685
    functionName: read_grid_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Result::read_u8
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - read_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_grid_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_bytes_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:690,1
    - Dst: Result::byte_len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:690,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:695,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:697,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:697,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 698
      start: 688
    functionDepth: 15
    functionLinenumber: 688
    functionLinenumberEnd: 698
    functionName: read_mcdi_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new_from_parts
    - Result::byte_len
    - Result::read_buf_bytes_ref
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_mcdi_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:703,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:705,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:715,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:715,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:717,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:717,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:717,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 718
      start: 701
    functionDepth: 14
    functionLinenumber: 701
    functionLinenumberEnd: 718
    functionName: read_owne_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - FrameResult::Tag
    - Tag::new
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - read_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_owne_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_play_counter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:723,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:725,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:729,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:729,1
    - Dst: StandardTag::PlayCounter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:729,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:731,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:731,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 732
      start: 721
    functionDepth: 14
    functionLinenumber: 721
    functionLinenumberEnd: 732
    functionName: read_pcnt_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - StandardTag::PlayCounter
    - Tag::new_std
    - FrameResult::Tag
    - Ok
    - read_play_counter
    - RawTag::new
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_pcnt_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:742,1
    - Dst: read_play_counter
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:745,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:746,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:746,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:751,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:751,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:754,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:756,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:756,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 757
      start: 735
    functionDepth: 14
    functionLinenumber: 735
    functionLinenumberEnd: 757
    functionName: read_popm_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - RawTagSubField::new
    - FrameResult::Tag
    - read_play_counter
    - Tag::new
    - Result::read_u8
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - Self::push
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_popm_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:762,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:764,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:769,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:769,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:771,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:771,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 772
      start: 760
    functionDepth: 14
    functionLinenumber: 760
    functionLinenumberEnd: 772
    functionName: read_poss_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new
    - Result::read_u8
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - Ok
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_poss_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_bytes_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:782,1
    - Dst: Result::bytes_available
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:782,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:785,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:785,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:785,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:787,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:787,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 788
      start: 775
    functionDepth: 15
    functionLinenumber: 775
    functionLinenumberEnd: 788
    functionName: read_priv_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new
    - Self::into_boxed_slice
    - Result::read_buf_bytes_ref
    - RawTag::new_with_sub_fields
    - Ok
    - Result::bytes_available
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_priv_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:792,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:793,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:793,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 794
      start: 791
    functionDepth: 15
    functionLinenumber: 791
    functionLinenumberEnd: 794
    functionName: read_raw_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - Result::read_buf_bytes_available_ref
    - FrameResult::Tag
    - Tag::new_from_parts
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_raw_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:799,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:801,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:806,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:806,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:808,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:808,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:808,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 809
      start: 797
    functionDepth: 14
    functionLinenumber: 797
    functionLinenumberEnd: 809
    functionName: read_sign_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Result::read_u8
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_sign_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:814,1
    - Dst: read_string_list
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:816,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:818,1
    - Dst: map_raw_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:818,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:818,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 819
      start: 812
    functionDepth: 14
    functionLinenumber: 812
    functionLinenumberEnd: 819
    functionName: read_text_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - RawTag::new
    - read_string_list
    - map_raw_tag
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_text_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:824,1
    - Dst: read_string_list
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:826,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:841,1
    - Dst: Result::chunks_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:842,1
    - Dst: all
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:842,1
    - Dst: contains_key
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:842,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:842,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:847,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:851,1
    - Dst: Result::chunks_exact
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:855,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:857,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:858,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:857,1
    - Dst: parser
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:862,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:862,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:862,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:863,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:863,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:863,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:864,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:864,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:864,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:866,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:866,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:866,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:867,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:867,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:867,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:874,1
    - Dst: FrameResult::MultipleTags
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:874,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:878,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:878,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:878,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 74
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 880
      start: 822
    functionDepth: 14
    functionLinenumber: 822
    functionLinenumberEnd: 880
    functionName: read_tipl_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - Tag::new_std
    - as_str
    - get
    - read_string_list
    - parser
    - Self::clone
    - Ok
    - push
    - Result::len
    - expect
    - Result::chunks_exact
    - all
    - read_encoding
    - Tag::new
    - FrameResult::MultipleTags
    - FrameResult::Tag
    - Default::default
    - Arc::new
    - contains_key
    - RawTag::new
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_tipl_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:885,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:887,1
    - Dst: read_string_list
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:889,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:893,1
    - Dst: to_ascii_lowercase
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:893,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:893,1
    - Dst: copied
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:893,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:897,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:897,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:899,1
    - Dst: map_raw_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:899,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 900
      start: 883
    functionDepth: 14
    functionLinenumber: 883
    functionLinenumberEnd: 900
    functionName: read_txxx_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - to_ascii_lowercase
    - get
    - as_str
    - read_string_list
    - Self::into_boxed_slice
    - map_raw_tag
    - RawTag::new_with_sub_fields
    - read_string
    - Ok
    - copied
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_txxx_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:905,1
    - Dst: Result::read_buf_bytes_available_ref
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:907,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:910,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:911,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:917,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:917,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:919,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:919,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:919,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 920
      start: 903
    functionDepth: 14
    functionLinenumber: 903
    functionLinenumberEnd: 920
    functionName: read_ufid_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - FrameResult::Tag
    - Tag::new
    - Result::read_buf_bytes_available_ref
    - Self::into_boxed_slice
    - RawTag::new_with_sub_fields
    - read_string
    - Ok
    - symphonia_core::errors::decode_error
    - Result::len
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_ufid_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:925,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:928,1
    - Dst: map_raw_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:928,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 929
      start: 923
    functionDepth: 14
    functionLinenumber: 923
    functionLinenumberEnd: 929
    functionName: read_url_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - map_raw_tag
    - Ok
    - RawTag::new
    - read_string
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_url_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:934,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:936,1
    - Dst: read_lang_code
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:939,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:940,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:940,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:944,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:947,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:947,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:949,1
    - Dst: map_raw_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:949,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:949,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 950
      start: 932
    functionDepth: 14
    functionLinenumber: 932
    functionLinenumberEnd: 950
    functionName: read_user_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - RawTagSubField::new
    - Self::into_boxed_slice
    - Some
    - Vec::new
    - map_raw_tag
    - RawTag::new_with_sub_fields
    - Self::push
    - read_string
    - Ok
    - read_lang_code
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_user_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:955,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:957,1
    - Dst: read_lang_code
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:960,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:961,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:961,1
    - Dst: read_string_ignore_empty
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:965,1
    - Dst: Self::push
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:966,1
    - Dst: RawTagSubField::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:966,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:970,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:973,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:973,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:975,1
    - Dst: map_raw_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:975,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:975,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 976
      start: 953
    functionDepth: 14
    functionLinenumber: 953
    functionLinenumberEnd: 976
    functionName: read_uslt_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - RawTagSubField::new
    - read_string_ignore_empty
    - Self::into_boxed_slice
    - Some
    - Vec::new
    - map_raw_tag
    - RawTag::new_with_sub_fields
    - Self::push
    - read_string
    - Ok
    - read_lang_code
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_uslt_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: read_encoding
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:981,1
    - Dst: read_string
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:989,1
    - Dst: RawTag::new_with_sub_fields
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:992,1
    - Dst: Self::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:992,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:994,1
    - Dst: map_raw_tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:994,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - reader
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 995
      start: 979
    functionDepth: 14
    functionLinenumber: 979
    functionLinenumberEnd: 995
    functionName: read_wxxx_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - read_encoding
    - Self::into_boxed_slice
    - map_raw_tag
    - RawTag::new_with_sub_fields
    - read_string
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_wxxx_frame(mut reader: BufReader<''_>, frame: &FrameInfo<''_>)
      -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1000,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - frame
    argTypes:
    - BufReader<'_>
    - '&FrameInfo<''_>'
    constantsTouched: []
    func_position:
      end: 1001
      start: 998
    functionDepth: 0
    functionLinenumber: 998
    functionLinenumberEnd: 1001
    functionName: skip_frame
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached:
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn skip_frame(_: BufReader<''_>, frame: &FrameInfo<''_>) -> Result<FrameResult>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1009,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1009,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1012,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1012,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1016,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1016,1
    - Dst: FrameResult::MultipleTags
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1021,1
    - Dst: FrameResult::Tag
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1030,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs:1030,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - raw
    - parser
    argTypes:
    - RawTag
    - Option<RawTagParser>
    constantsTouched: []
    func_position:
      end: 1031
      start: 1004
    functionDepth: 1
    functionLinenumber: 1004
    functionLinenumberEnd: 1031
    functionName: map_raw_tag
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 7
    functionsReached:
    - Tag::new_std
    - Tag::new
    - FrameResult::MultipleTags
    - parser
    - FrameResult::Tag
    - clone
    linkageType: ''
    returnType: FrameResult
    signature: 'fn map_raw_tag(raw: RawTag, parser: Option<RawTagParser>) -> FrameResult'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1096
    functionDepth: 0
    functionLinenumber: 1096
    functionLinenumberEnd: 1116
    functionName: tests::verify_read_date
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_date()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1119
    functionDepth: 0
    functionLinenumber: 1119
    functionLinenumberEnd: 1132
    functionName: tests::verify_read_encoding
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_encoding()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1135
    functionDepth: 0
    functionLinenumber: 1135
    functionLinenumberEnd: 1167
    functionName: tests::verify_read_lang_code
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_lang_code()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1170
    functionDepth: 0
    functionLinenumber: 1170
    functionLinenumberEnd: 1206
    functionName: tests::verify_read_play_counter
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_play_counter()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1235
      start: 1209
    functionDepth: 0
    functionLinenumber: 1209
    functionLinenumberEnd: 1235
    functionName: tests::verify_read_string
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_string()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1238
    functionDepth: 0
    functionLinenumber: 1238
    functionLinenumberEnd: 1251
    functionName: tests::verify_read_string_ignore_empty
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_string_ignore_empty()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1254
    functionDepth: 0
    functionLinenumber: 1254
    functionLinenumberEnd: 1310
    functionName: tests::verify_read_string_list
    functionSourceFile: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_read_string_list()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '[u8; 4]::iter'
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:79,1
    - Dst: any
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:79,1
    - Dst: Result::is_ascii
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:79,1
    - Dst: Result::is_ascii_control
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:79,1
    - Dst: decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:80,1
    - Dst: str::from_utf8
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:84,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:84,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:85,1
    - Dst: '&mut MetadataBuilder::add_mapped_tags'
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:87,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:87,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 3
    argNames:
    - chunk_id
    - buf
    - builder
    argTypes:
    - '[u8; 4]'
    - '&[u8]'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 90
      start: 71
    functionDepth: 11
    functionLinenumber: 71
    functionLinenumberEnd: 90
    functionName: info::parse_riff_info_chunk
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/riff.rs
    functionUses: 0
    functionsReached:
    - expect
    - any
    - '&mut MetadataBuilder::add_mapped_tags'
    - Ok
    - Result::is_ascii_control
    - Result::is_ascii
    - '[u8; 4]::iter'
    - str::from_utf8
    - RawTag::new
    - String::from_utf8_lossy
    - decode_error
    linkageType: ''
    returnType: Result
    signature: 'pub fn parse_riff_info_chunk(chunk_id: [u8; 4],buf: &[u8],builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: MetadataBuilder::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:106,1
    - Dst: crate::id3v2::read_id3v2
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:107,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:108,1
    - Dst: Self::build
      Src: /src/symphonia/symphonia-metadata/src/embedded/riff.rs:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - reader
    - side_data
    argTypes:
    - '&mut B'
    - '&mut Vec<MetadataSideData>'
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 16
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: id3::read_riff_id3_chunk
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/riff.rs
    functionUses: 0
    functionsReached:
    - Self::build
    - crate::id3v2::read_id3v2
    - MetadataBuilder::new
    - Ok
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_riff_id3_chunk<B: ReadBytes>(reader: &mut B,side_data:
      &mut Vec<MetadataSideData>,) -> Result<MetadataRevision>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:38,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:38,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:43,1
    - Dst: char::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:43,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - bytes
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 49
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 49
    functionName: printable_ascii_to_string
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 3
    functionsReached:
    - Some
    - char::from
    - Result::len
    - String::with_capacity
    - push
    linkageType: ''
    returnType: Option
    signature: 'fn printable_ascii_to_string(bytes: &[u8]) -> Option<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Default::default
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:57,1
    - Dst: vorbis::read_vorbis_comment
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - reader
    - builder
    argTypes:
    - '&mut B'
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 15
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: read_flac_comment_block
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 2
    functionsReached:
    - Default::default
    - vorbis::read_vorbis_comment
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_flac_comment_block<B: ReadBytes>(reader: &mut B,builder:
      &mut MetadataBuilder,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:63,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:67,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:70,1
    - Dst: printable_ascii_to_string
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:73,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:76,1
    - Dst: filter
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:76,1
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:76,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:78,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:85,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:88,1
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:91,1
    - Dst: is_empty
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:93,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:94,1
    - Dst: Self::into_owned
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:94,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:96,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:96,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:96,1
    - Dst: StandardTag::Description
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:96,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:98,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:102,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:103,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:106,1
    - Dst: NonZeroU8::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:109,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:109,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:113,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:117,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:120,1
    - Dst: utils::images::try_get_image_info
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:124,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:126,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:127,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:127,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:127,1
    - Dst: or
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:127,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:128,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:128,1
    - Dst: or
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:128,1
    - Dst: Option::as_ref
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:129,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:129,1
    - Dst: utils::id3v2::get_visual_key_from_picture_type
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:130,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 103
    argCount: 1
    argNames:
    - reader
    argTypes:
    - '&mut B'
    constantsTouched: []
    func_position:
      end: 134
      start: 62
    functionDepth: 14
    functionLinenumber: 62
    functionLinenumberEnd: 134
    functionName: read_flac_picture_block
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 3
    functionsReached:
    - or
    - Self::into_owned
    - filter
    - Result::read_boxed_slice_exact
    - Ok
    - Self::clone
    - StandardTag::Description
    - symphonia_core::errors::decode_error
    - push
    - Tag::new_from_parts
    - Result::is_empty
    - map
    - String::from_utf8_lossy
    - utils::images::try_get_image_info
    - Some
    - printable_ascii_to_string
    - Option::as_ref
    - Result::read_be_u32
    - is_empty
    - NonZeroU8::new
    - Arc::new
    - utils::id3v2::get_visual_key_from_picture_type
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_flac_picture_block<B: ReadBytes>(reader: &mut B) -> Result<Visual>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: SeekIndex::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:145,1
    - Dst: Result::read_be_u64
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:150,1
    - Dst: '&''a [T]::try_into'
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:155,1
    - Dst: Result::read_be_u64
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:157,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:159,1
    - Dst: Option::insert
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:160,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:160,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:163,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:167,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - reader
    - block_length
    argTypes:
    - '&mut B'
    - u32
    constantsTouched: []
    func_position:
      end: 168
      start: 137
    functionDepth: 10
    functionLinenumber: 137
    functionLinenumberEnd: 168
    functionName: read_flac_seektable_block
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 1
    functionsReached:
    - '&''a [T]::try_into'
    - SeekIndex::new
    - Result::read_be_u16
    - Result::read_be_u64
    - Ok
    - Option::insert
    - Result::ignore_bytes
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_flac_seektable_block<B: ReadBytes>(reader: &mut B,block_length:
      u32,) -> Result<SeekIndex>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: escape_identifier
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:178,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:178,1
    - Dst: Result::read_boxed_slice_exact
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:179,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - reader
    - block_length
    argTypes:
    - '&mut B'
    - u32
    constantsTouched: []
    func_position:
      end: 181
      start: 171
    functionDepth: 13
    functionLinenumber: 171
    functionLinenumberEnd: 181
    functionName: read_flac_application_block
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 1
    functionsReached:
    - escape_identifier
    - Ok
    - Result::read_quad_bytes
    - Result::read_boxed_slice_exact
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_flac_application_block<B: ReadBytes>(reader: &mut B,block_length:
      u32,) -> Result<VendorDataAttachment>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:190,1
    - Dst: printable_ascii_to_string
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:193,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:195,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:196,1
    - Dst: u32::clone
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:196,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:196,1
    - Dst: StandardTag::IdentCatalogNumber
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:196,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:198,1
    - Dst: Result::read_be_u64
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:202,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:205,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:209,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:214,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:215,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:219,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:223,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:228,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:232,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:232,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:234,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:238,1
    - Dst: read_flac_cuesheet_track
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:238,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:241,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 75
    argCount: 2
    argNames:
    - reader
    - tb
    argTypes:
    - '&mut B'
    - TimeBase
    constantsTouched: []
    func_position:
      end: 242
      start: 184
    functionDepth: 13
    functionLinenumber: 184
    functionLinenumberEnd: 242
    functionName: read_flac_cuesheet_block
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 1
    functionsReached:
    - usize::from
    - push
    - Tag::new_from_parts
    - Arc::new
    - StandardTag::IdentCatalogNumber
    - Result::read_buf_exact
    - Result::read_u8
    - Some
    - Result::read_be_u16
    - read_flac_cuesheet_track
    - printable_ascii_to_string
    - Result::read_be_u64
    - Vec::new
    - u32::clone
    - Ok
    - symphonia_core::errors::decode_error
    - Vec::with_capacity
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_flac_cuesheet_block<B: ReadBytes>(reader: &mut B,tb: TimeBase,)
      -> Result<ChapterGroup>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u64
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:249,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:255,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:260,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:265,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:271,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:277,1
    - Dst: printable_ascii_to_string
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:279,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:281,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:282,1
    - Dst: u32::clone
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:282,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:282,1
    - Dst: StandardTag::IdentIsrc
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:282,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:284,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:289,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:296,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:301,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:302,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:306,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:310,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:317,1
    - Dst: read_flac_cuesheet_track_index
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:324,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:326,1
    - Dst: ChapterGroupItem::Chapter
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:326,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:329,1
    - Dst: ChapterGroupItem::Group
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:329,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:332,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:332,1
    - Dst: TimeBase::calc_time_saturating
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:339,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:339,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:347,1
    - Dst: ChapterGroupItem::Chapter
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:347,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 113
    argCount: 3
    argNames:
    - reader
    - is_cdda
    - tb
    argTypes:
    - '&mut B'
    - bool
    - TimeBase
    constantsTouched: []
    func_position:
      end: 349
      start: 244
    functionDepth: 14
    functionLinenumber: 244
    functionLinenumberEnd: 349
    functionName: read_flac_cuesheet_track
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 1
    functionsReached:
    - Result::read_be_u16
    - u32::clone
    - Ok
    - symphonia_core::errors::decode_error
    - push
    - Tag::new_from_parts
    - Result::read_buf_exact
    - ChapterGroupItem::Group
    - try_into
    - StandardTag::IdentIsrc
    - read_flac_cuesheet_track_index
    - Result::read_u8
    - Some
    - unwrap_or_else
    - printable_ascii_to_string
    - Result::read_be_u32
    - Vec::with_capacity
    - ChapterGroupItem::Chapter
    - Timestamp::from
    - Arc::new
    - TimeBase::calc_time_saturating
    - Result::read_be_u64
    linkageType: ''
    returnType: Result
    signature: 'fn read_flac_cuesheet_track<B: ReadBytes>(reader: &mut B,is_cdda:
      bool,tb: TimeBase,) -> Result<ChapterGroupItem>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_be_u64
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:357,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:358,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:363,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:370,1
    - Dst: u64::checked_add
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:379,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:379,1
    - Dst: Timestamp::try_into
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:381,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:381,1
    - Dst: unwrap_or_else
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:379,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:387,1
    - Dst: TimeBase::calc_time_saturating
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:388,1
    - Dst: Timestamp::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:388,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:397,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 45
    argCount: 4
    argNames:
    - reader
    - is_cdda
    - track_ts
    - tb
    argTypes:
    - '&mut B'
    - bool
    - u64
    - TimeBase
    constantsTouched: []
    func_position:
      end: 399
      start: 351
    functionDepth: 14
    functionLinenumber: 351
    functionLinenumberEnd: 399
    functionName: read_flac_cuesheet_track_index
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 1
    functionsReached:
    - Timestamp::from
    - TimeBase::calc_time_saturating
    - unwrap_or_else
    - Vec::new
    - Result::read_be_u64
    - Timestamp::try_into
    - u64::checked_add
    - ok
    - Option::and_then
    - Ok
    - symphonia_core::errors::decode_error
    - Result::read_be_u32
    linkageType: ''
    returnType: Result
    signature: 'fn read_flac_cuesheet_track_index<B: ReadBytes>(reader: &mut B,is_cdda:
      bool,track_ts: u64,tb: TimeBase,) -> Result<Chapter>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:406,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:406,1
    - Dst: Result::is_ascii
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:409,1
    - Dst: Result::is_ascii_control
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:409,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:410,1
    - Dst: char::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:410,1
    - Dst: push_str
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:415,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:416,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/flac.rs:417,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 48
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 422
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 422
    functionName: escape_identifier
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
    functionUses: 1
    functionsReached:
    - Result::is_ascii_control
    - Result::is_ascii
    - char::from
    - Result::len
    - push_str
    - String::with_capacity
    - push
    linkageType: ''
    returnType: String
    signature: 'fn escape_identifier(buf: &[u8]) -> String'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: base64::decode
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:161,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:163,1
    - Dst: flac::read_flac_picture_block
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:166,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:166,1
    - Dst: Result::map
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - b64
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 167
      start: 159
    functionDepth: 11
    functionLinenumber: 159
    functionLinenumberEnd: 167
    functionName: parse_base64_picture_block
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 1
    functionsReached:
    - base64::decode
    - flac::read_flac_picture_block
    - Result::map
    - BufReader::new
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn parse_base64_picture_block(b64: &str) -> Result<ParsedComment>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: base64::decode
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:172,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:174,1
    - Dst: utils::images::try_get_image_info
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:178,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:180,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:183,1
    - Dst: ParsedComment::Visual
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:183,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:184,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:185,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - b64
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 191
      start: 170
    functionDepth: 11
    functionLinenumber: 170
    functionLinenumberEnd: 191
    functionName: parse_base64_cover_art
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 1
    functionsReached:
    - ParsedComment::Visual
    - utils::images::try_get_image_info
    - Some
    - base64::decode
    - Ok
    - symphonia_core::errors::decode_error
    linkageType: ''
    returnType: Result
    signature: 'fn parse_base64_cover_art(b64: &str) -> Result<ParsedComment>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:202,1
    - Dst: Err
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:203,1
    - Dst: Result::trim_start_matches
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:209,1
    - Dst: Result::trim_end_matches
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:210,1
    - Dst: Result::is_empty
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:213,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:216,1
    - Dst: Result::bytes
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:219,1
    - Dst: Result::try_fold
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:219,1
    - Dst: u32::checked_mul
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:222,1
    - Dst: Option::and_then
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:222,1
    - Dst: u32::checked_add
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:222,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:222,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:219,1
    - Dst: Result::len
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:226,1
    - Dst: ok_or
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:219,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 42
    argCount: 2
    argNames:
    - buf
    - trim_leading
    argTypes:
    - '&str'
    - bool
    constantsTouched: []
    func_position:
      end: 229
      start: 200
    functionDepth: 13
    functionLinenumber: 200
    functionLinenumberEnd: 229
    functionName: p::a::r::s::e::_::c::h::a::p::t::e::r::_::t::i::m::e::s::t::a::m::p::parse_unsigned_num
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 0
    functionsReached:
    - Result::trim_start_matches
    - Result::bytes
    - u32::checked_mul
    - u32::checked_add
    - ok_or
    - Result::trim_end_matches
    - Result::is_empty
    - map
    - Result::len
    - Option::and_then
    - Err
    - Ok
    - Result::try_fold
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn parse_unsigned_num(buf: &str, trim_leading: bool) -> Result<(u32,
      u8)>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::split_once
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:232,1
    - Dst: Err
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:234,1
    - Dst: Self::split_once
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:236,1
    - Dst: Err
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:238,1
    - Dst: Self::split_once
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:241,1
    - Dst: unwrap_or
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:241,1
    - Dst: parse_unsigned_num
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:243,1
    - Dst: parse_unsigned_num
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:244,1
    - Dst: parse_unsigned_num
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:245,1
    - Dst: parse_unsigned_num
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:247,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:249,1
    - Dst: pow
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:249,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:249,1
    - Dst: Time::from_hhmmss
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:251,1
    - Dst: try_into
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:253,1
    - Dst: map_err
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:253,1
    - Dst: Result::try_into
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:254,1
    - Dst: map_err
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:254,1
    - Dst: Option::ok_or
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:251,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 90
    argCount: 1
    argNames:
    - time
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 258
      start: 194
    functionDepth: 14
    functionLinenumber: 194
    functionLinenumberEnd: 258
    functionName: parse_chapter_timestamp
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 1
    functionsReached:
    - map_err
    - Result::try_into
    - u64::from
    - pow
    - Self::split_once
    - Option::ok_or
    - String::split_once
    - Time::from_hhmmss
    - Err
    - try_into
    - parse_unsigned_num
    - unwrap_or
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn parse_chapter_timestamp(time: &str) -> Result<Time>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::chars
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:278,1
    - Dst: '&str::chars'
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:281,1
    - Dst: next
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:282,1
    - Dst: Result::eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:283,1
    - Dst: next
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:292,1
    - Dst: Result::is_ascii_digit
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:293,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:295,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:295,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:304,1
    - Dst: '&''static str::to_string'
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:304,1
    - Dst: Option::is_empty
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:307,1
    - Dst: ChapterInfoIntent::Tag
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:307,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:309,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 40
    argCount: 1
    argNames:
    - key
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 310
      start: 277
    functionDepth: 15
    functionLinenumber: 277
    functionLinenumberEnd: 310
    functionName: try_parse_chapter_info_key
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 1
    functionsReached:
    - Option::is_empty
    - next
    - String::chars
    - Result::is_ascii_digit
    - Result::eq_ignore_ascii_case
    - as_str
    - Some
    - '&''static str::to_string'
    - ChapterInfoIntent::Tag
    - '&str::chars'
    - u32::from
    linkageType: ''
    returnType: Option
    signature: 'fn try_parse_chapter_info_key(key: &str) -> Option<ChapterInfoKey>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: String::from_utf8_lossy
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:336,1
    - Dst: Result::split_once
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:339,1
    - Dst: String::chars
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:342,1
    - Dst: filter
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:342,1
    - Dst: chars().filter(text::filter::ascii_text).collect::<String>
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:342,1
    - Dst: try_parse_chapter_info_key
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:344,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:346,1
    - Dst: ParsedComment::ChapterInfo
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:346,1
    - Dst: to_string
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:346,1
    - Dst: String::eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:348,1
    - Dst: parse_base64_picture_block
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:351,1
    - Dst: String::eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:353,1
    - Dst: parse_base64_cover_art
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:356,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:361,1
    - Dst: ParsedComment::Tag
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:361,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:361,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:365,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 367
      start: 331
    functionDepth: 16
    functionLinenumber: 331
    functionLinenumberEnd: 367
    functionName: parse_vorbis_comment
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 1
    functionsReached:
    - symphonia_core::errors::decode_error
    - String::eq_ignore_ascii_case
    - chars().filter(text::filter::ascii_text).collect::<String>
    - try_parse_chapter_info_key
    - parse_base64_picture_block
    - ParsedComment::Tag
    - String::chars
    - RawTag::new
    - filter
    - to_string
    - Result::split_once
    - Ok
    - String::from_utf8_lossy
    - ParsedComment::ChapterInfo
    - parse_base64_cover_art
    linkageType: ''
    returnType: Result
    signature: 'fn parse_vorbis_comment(buf: &[u8]) -> Result<ParsedComment>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:375,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:378,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:378,1
    - Dst: Default::default
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:381,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:384,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:389,1
    - Dst: Result::read_buf_exact
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:395,1
    - Dst: parse_vorbis_comment
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:398,1
    - Dst: '&mut MetadataBuilder::add_mapped_tags'
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:402,1
    - Dst: '&mut MetadataBuilder::add_visual'
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:406,1
    - Dst: Option::entry
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:411,1
    - Dst: or_default
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:411,1
    - Dst: Option::push
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:411,1
    - Dst: Option::is_empty
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:419,1
    - Dst: Option::into_values
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:420,1
    - Dst: filter_map
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:420,1
    - Dst: Vec::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:424,1
    - Dst: parse_chapter_timestamp
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:430,1
    - Dst: Result::ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:430,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:433,1
    - Dst: String::eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:436,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:437,1
    - Dst: StandardTag::ChapterTitle
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:437,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:437,1
    - Dst: String::eq_ignore_ascii_case
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:439,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:440,1
    - Dst: StandardTag::Url
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:440,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:440,1
    - Dst: push
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:447,1
    - Dst: Tag::new_from_parts
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:447,1
    - Dst: String::map
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:453,1
    - Dst: ChapterGroupItem::Chapter
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:454,1
    - Dst: "into_values()\n            .filter_map(|infos| {\n                let\
        \ mut time = None;\n                let mut tags = Vec::new();\n\n       \
        \         for info in infos {\n                    match info.key.intent {\n\
        \                        ChapterInfoIntent::Time => {\n                  \
        \          // Value is the chapter's start time.\n                       \
        \     time = parse_chapter_timestamp(&info.value).ok();\n                \
        \        }\n                        ChapterInfoIntent::Tag(key) => {\n   \
        \                         let value = Arc::new(info.value);\n\n          \
        \                  // \"NAME\" and \"URL\" are the only standardized keys\
        \ for chapters.\n                            let std_tag = if key.eq_ignore_ascii_case(\"\
        name\") {\n                                Some(StandardTag::ChapterTitle(value.clone()))\n\
        \                            }\n                            else if key.eq_ignore_ascii_case(\"\
        url\") {\n                                Some(StandardTag::Url(value.clone()))\n\
        \                            }\n                            else {\n     \
        \                           None\n                            };\n\n     \
        \                       // Chapter-specific comment.\n                   \
        \         tags.push(Tag::new_from_parts(key, value, std_tag));\n         \
        \               }\n                    }\n                }\n\n          \
        \      // A chapter can only be created if the chapter's start time is known.\n\
        \                time.map(|time| {\n                    ChapterGroupItem::Chapter(Chapter\
        \ {\n                        start_time: time,\n                        end_time:\
        \ None,\n                        start_byte: None,\n                     \
        \   end_byte: None,\n                        tags,\n                     \
        \   visuals: vec![],\n                    })\n                })\n       \
        \     })\n            .collect::<Vec<ChapterGroupItem>>"
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:420,1
    - Dst: '&mut Vec<MetadataSideData>::push'
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:466,1
    - Dst: MetadataSideData::Chapters
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:466,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs:473,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 103
    argCount: 3
    argNames:
    - reader
    - builder
    - side_data
    argTypes:
    - '&mut B'
    - '&mut MetadataBuilder'
    - '&mut Vec<MetadataSideData>'
    constantsTouched: []
    func_position:
      end: 474
      start: 369
    functionDepth: 14
    functionLinenumber: 369
    functionLinenumberEnd: 474
    functionName: read_vorbis_comment
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 3
    functionsReached:
    - Result::read_u32
    - Result::ok
    - parse_chapter_timestamp
    - MetadataSideData::Chapters
    - Option::push
    - Ok
    - Result::ignore_bytes
    - push
    - "into_values()\n            .filter_map(|infos| {\n                let mut time\
      \ = None;\n                let mut tags = Vec::new();\n\n                for\
      \ info in infos {\n                    match info.key.intent {\n           \
      \             ChapterInfoIntent::Time => {\n                            // Value\
      \ is the chapter's start time.\n                            time = parse_chapter_timestamp(&info.value).ok();\n\
      \                        }\n                        ChapterInfoIntent::Tag(key)\
      \ => {\n                            let value = Arc::new(info.value);\n\n  \
      \                          // \"NAME\" and \"URL\" are the only standardized\
      \ keys for chapters.\n                            let std_tag = if key.eq_ignore_ascii_case(\"\
      name\") {\n                                Some(StandardTag::ChapterTitle(value.clone()))\n\
      \                            }\n                            else if key.eq_ignore_ascii_case(\"\
      url\") {\n                                Some(StandardTag::Url(value.clone()))\n\
      \                            }\n                            else {\n       \
      \                         None\n                            };\n\n         \
      \                   // Chapter-specific comment.\n                         \
      \   tags.push(Tag::new_from_parts(key, value, std_tag));\n                 \
      \       }\n                    }\n                }\n\n                // A\
      \ chapter can only be created if the chapter's start time is known.\n      \
      \          time.map(|time| {\n                    ChapterGroupItem::Chapter(Chapter\
      \ {\n                        start_time: time,\n                        end_time:\
      \ None,\n                        start_byte: None,\n                       \
      \ end_byte: None,\n                        tags,\n                        visuals:\
      \ vec![],\n                    })\n                })\n            })\n    \
      \        .collect::<Vec<ChapterGroupItem>>"
    - Option::is_empty
    - or_default
    - parse_vorbis_comment
    - Tag::new_from_parts
    - '&mut MetadataBuilder::add_mapped_tags'
    - StandardTag::Url
    - Result::read_buf_exact
    - '&mut MetadataBuilder::add_visual'
    - Option::into_values
    - filter_map
    - String::eq_ignore_ascii_case
    - u64::from
    - StandardTag::ChapterTitle
    - Some
    - Vec::new
    - Option::entry
    - Default::default
    - '&mut Vec<MetadataSideData>::push'
    - ChapterGroupItem::Chapter
    - Arc::new
    - String::map
    - clone
    linkageType: ''
    returnType: Result
    signature: 'pub fn read_vorbis_comment<B: ReadBytes>(reader: &mut B,builder: &mut
      MetadataBuilder,side_data: &mut Vec<MetadataSideData>,) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 572
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 572
    functionName: tests::verify_parse_chapter_timestamp
    functionSourceFile: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_parse_chapter_timestamp()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&mut MetadataBuilder::add_mapped_tags'
      Src: /src/symphonia/symphonia-metadata/src/utils/itunes.rs:87,1
    - Dst: RawTag::new
      Src: /src/symphonia/symphonia-metadata/src/utils/itunes.rs:87,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/utils/itunes.rs:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - key
    - value
    - builder
    argTypes:
    - String
    - RawValue
    - '&mut MetadataBuilder'
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 15
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: parse_itunes_tag
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/itunes.rs
    functionUses: 1
    functionsReached:
    - Ok
    - RawTag::new
    - '&mut MetadataBuilder::add_mapped_tags'
    linkageType: ''
    returnType: Result
    signature: 'pub fn parse_itunes_tag(key: String, value: RawValue, builder: &mut
      MetadataBuilder) -> Result<()>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v1.rs:12,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v1.rs:12,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v1.rs:12,1
    - Dst: StandardTagPair::to_string
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v1.rs:12,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - num
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 13
      start: 11
    functionDepth: 9
    functionLinenumber: 11
    functionLinenumberEnd: 13
    functionName: get_genre_name
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/id3v1.rs
    functionUses: 2
    functionsReached:
    - get
    - usize::from
    - StandardTagPair::to_string
    - map
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_genre_name(num: u8) -> Option<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: len
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 34
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 34
    functionName: d::e::c::o::d::e::rfc4648_base64_symbols
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/base64.rs
    functionUses: 0
    functionsReached:
    - len
    linkageType: ''
    returnType: '[u8; 256]'
    signature: const fn rfc4648_base64_symbols() -> [u8; 256]
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&str::trim_end_matches'
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:39,1
    - Dst: Vec::with_capacity
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:43,1
    - Dst: '&str::len'
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:43,1
    - Dst: '&str::as_bytes'
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:49,1
    - Dst: chunks_exact
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:49,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:52,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:53,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:54,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:55,1
    - Dst: GenericAudioBufferRef::push
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:63,1
    - Dst: GenericAudioBufferRef::push
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:65,1
    - Dst: GenericAudioBufferRef::push
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:67,1
    - Dst: remainder
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:71,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:74,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:75,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:76,1
    - Dst: GenericAudioBufferRef::push
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:82,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:85,1
    - Dst: usize::from
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:86,1
    - Dst: GenericAudioBufferRef::push
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:92,1
    - Dst: Self::len
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:95,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:100,1
    - Dst: GenericAudioBufferRef::into_boxed_slice
      Src: /src/symphonia/symphonia-metadata/src/utils/base64.rs:100,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 143
    argCount: 1
    argNames:
    - encoded
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 101
      start: 15
    functionDepth: 1
    functionLinenumber: 15
    functionLinenumberEnd: 101
    functionName: decode
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/base64.rs
    functionUses: 13
    functionsReached:
    - usize::from
    - '&str::trim_end_matches'
    - GenericAudioBufferRef::push
    - Some
    - '&str::len'
    - GenericAudioBufferRef::into_boxed_slice
    - '&str::as_bytes'
    - Self::len
    - chunks_exact
    - remainder
    - Vec::with_capacity
    linkageType: ''
    returnType: Option
    signature: 'pub fn decode(encoded: &str) -> Option<Box<[u8]>>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 129
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 129
    functionName: tests::verify_base64_decode
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/base64.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_base64_decode()
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: NonZeroU8::new
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - u8
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 10
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: non_zero
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/images.rs
    functionUses: 4
    functionsReached:
    - NonZeroU8::new
    linkageType: ''
    returnType: NonZeroU8
    signature: 'const fn non_zero(value: u8) -> NonZeroU8'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: iter
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:57,1
    - Dst: filter
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:57,1
    - Dst: Result::starts_with
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:59,1
    - Dst: find_map
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:57,1
    - Dst: BufReader::new
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:60,1
    - Dst: len
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:60,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 41
    argCount: 1
    argNames:
    - buf
    argTypes:
    - '&[u8]'
    constantsTouched: []
    func_position:
      end: 61
      start: 38
    functionDepth: 11
    functionLinenumber: 38
    functionLinenumberEnd: 61
    functionName: try_get_image_info
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/images.rs
    functionUses: 5
    functionsReached:
    - len
    - iter
    - filter
    - ok
    - find_map
    - BufReader::new
    - Result::starts_with
    linkageType: ''
    returnType: Option
    signature: 'pub fn try_get_image_info(buf: &[u8]) -> Option<ImageInfo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:65,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:66,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:73,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:75,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:80,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:81,1
    - Dst: Result::read_be_u16
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:82,1
    - Dst: ColorMode::Direct
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:84,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:84,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:84,1
    - Dst: '&str::to_string'
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:87,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:88,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:88,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:92,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:96,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:96,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:99,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 1
    argNames:
    - reader
    argTypes:
    - BufReader<'_>
    constantsTouched: []
    func_position:
      end: 100
      start: 64
    functionDepth: 14
    functionLinenumber: 64
    functionLinenumberEnd: 100
    functionName: parse_jpeg
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/images.rs
    functionUses: 0
    functionsReached:
    - non_zero
    - u64::from
    - Result::read_u8
    - ColorModel::RGB
    - Result::read_be_u16
    - ColorMode::Direct
    - '&str::to_string'
    - Ok
    - symphonia_core::errors::decode_error
    - Result::ignore_bytes
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn parse_jpeg(mut reader: BufReader<''_>) -> Result<ImageInfo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:105,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:106,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:107,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:110,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:111,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:112,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:113,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:116,1
    - Dst: NonZeroU8::new
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:118,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:120,1
    - Dst: contains
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:126,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:126,1
    - Dst: ColorMode::Direct
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:127,1
    - Dst: ColorModel::Y
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:127,1
    - Dst: contains
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:130,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:130,1
    - Dst: ColorMode::Direct
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:130,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:130,1
    - Dst: contains
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:132,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:132,1
    - Dst: ColorMode::Direct
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:132,1
    - Dst: ColorModel::YA
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:132,1
    - Dst: contains
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:134,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:134,1
    - Dst: ColorMode::Direct
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:134,1
    - Dst: ColorModel::RGBA
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:134,1
    - Dst: contains
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:136,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:136,1
    - Dst: Result::read_be_u32
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:139,1
    - Dst: Result::read_quad_bytes
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:140,1
    - Dst: ColorModel::RGBA
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:145,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:145,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:152,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:152,1
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:156,1
    - Dst: u64::from
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:156,1
    - Dst: ColorMode::Indexed
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:159,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:160,1
    - Dst: get
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:160,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:164,1
    - Dst: '&str::to_string'
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:168,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:173,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 117
    argCount: 1
    argNames:
    - reader
    argTypes:
    - BufReader<'_>
    constantsTouched: []
    func_position:
      end: 174
      start: 103
    functionDepth: 13
    functionLinenumber: 103
    functionLinenumberEnd: 174
    functionName: parse_png
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/images.rs
    functionUses: 0
    functionsReached:
    - non_zero
    - u64::from
    - contains
    - get
    - ColorModel::YA
    - Result::read_u8
    - Result::read_quad_bytes
    - ColorModel::RGB
    - ColorMode::Direct
    - ColorModel::RGBA
    - Ok
    - '&str::to_string'
    - ColorMode::Indexed
    - ColorModel::Y
    - symphonia_core::errors::decode_error
    - Result::read_be_u32
    - Result::ignore_bytes
    - NonZeroU8::new
    linkageType: ''
    returnType: Result
    signature: 'fn parse_png(mut reader: BufReader<''_>) -> Result<ImageInfo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::ignore_bytes
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:179,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:182,1
    - Dst: contains
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:187,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:188,1
    - Dst: Result::read_i32
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:192,1
    - Dst: unsigned_abs
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:192,1
    - Dst: Result::read_i32
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:195,1
    - Dst: unsigned_abs
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:195,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:197,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:200,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:203,1
    - Dst: Result::read_u32
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:204,1
    - Dst: ColorMode::Indexed
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:214,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:215,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:216,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:216,1
    - Dst: ColorMode::Direct
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:221,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:221,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:221,1
    - Dst: ColorMode::Direct
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:225,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:225,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:225,1
    - Dst: symphonia_core::errors::decode_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:228,1
    - Dst: ColorMode::Indexed
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:235,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:236,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:237,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:237,1
    - Dst: ColorMode::Indexed
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:244,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:245,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:246,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:246,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:255,1
    - Dst: '&str::to_string'
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:259,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:264,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 86
    argCount: 1
    argNames:
    - reader
    argTypes:
    - BufReader<'_>
    constantsTouched: []
    func_position:
      end: 265
      start: 177
    functionDepth: 13
    functionLinenumber: 177
    functionLinenumberEnd: 265
    functionName: parse_bitmap
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/images.rs
    functionUses: 0
    functionsReached:
    - Result::read_u32
    - non_zero
    - contains
    - symphonia_core::errors::unsupported_error
    - ColorModel::RGB
    - ColorMode::Direct
    - '&str::to_string'
    - Result::read_u16
    - unsigned_abs
    - ColorMode::Indexed
    - Ok
    - symphonia_core::errors::decode_error
    - Result::ignore_bytes
    - Result::read_i32
    linkageType: ''
    returnType: Result
    signature: 'fn parse_bitmap(mut reader: BufReader<''_>) -> Result<ImageInfo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:269,1
    - Dst: Result::read_u16
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:270,1
    - Dst: Result::read_u8
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:272,1
    - Dst: ColorMode::Indexed
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:278,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:279,1
    - Dst: ColorModel::RGB
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:280,1
    - Dst: non_zero
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:280,1
    - Dst: symphonia_core::errors::unsupported_error
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:285,1
    - Dst: '&str::to_string'
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:289,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:290,1
    - Dst: u32::from
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:290,1
    - Dst: Ok
      Src: /src/symphonia/symphonia-metadata/src/utils/images.rs:294,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - reader
    argTypes:
    - BufReader<'_>
    constantsTouched: []
    func_position:
      end: 295
      start: 268
    functionDepth: 14
    functionLinenumber: 268
    functionLinenumberEnd: 295
    functionName: parse_gif
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/images.rs
    functionUses: 0
    functionsReached:
    - non_zero
    - symphonia_core::errors::unsupported_error
    - Result::read_u8
    - ColorModel::RGB
    - '&str::to_string'
    - Result::read_u16
    - ColorMode::Indexed
    - Ok
    - u32::from
    linkageType: ''
    returnType: Result
    signature: 'fn parse_gif(mut reader: BufReader<''_>) -> Result<ImageInfo>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:15,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:16,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:17,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:18,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:19,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:20,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:21,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:22,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:23,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:24,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:25,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:26,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:27,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:28,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:29,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:30,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:31,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:32,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:33,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 1
    argNames:
    - apic
    argTypes:
    - u32
    constantsTouched: []
    func_position:
      end: 37
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 37
    functionName: get_visual_key_from_picture_type
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs
    functionUses: 2
    functionsReached:
    - Some
    linkageType: ''
    returnType: Option
    signature: 'pub fn get_visual_key_from_picture_type(apic: u32) -> Option<StandardVisualKey>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:43,1
    - Dst: clone
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:43,1
    - Dst: MetadataBuilder::add_tag
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:46,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:46,1
    - Dst: MetadataBuilder::add_tag
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:50,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:50,1
    - Dst: MetadataBuilder::add_tag
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:54,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:54,1
    - Dst: Self::clone
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:54,1
    - Dst: MetadataBuilder::add_tag
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:55,1
    - Dst: Tag::new_std
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:55,1
    - Dst: MetadataBuilder::add_tag
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:63,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 2
    argNames:
    - raw
    - parser
    argTypes:
    - RawTag
    - RawTagParser
    constantsTouched: []
    func_position:
      end: 64
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 64
    functionName: MetadataBuilder::add_mapped_tags_with_parser
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 1
    functionsReached:
    - Tag::new_std
    - Tag::new
    - parser
    - MetadataBuilder::add_tag
    - Self::clone
    - clone
    linkageType: ''
    returnType: '&mut Self'
    signature: 'fn add_mapped_tags_with_parser(&mut self, raw: RawTag, parser: RawTagParser)
      -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: '&RawTagParserMap::get'
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:68,1
    - Dst: to_ascii_lowercase
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:68,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:68,1
    - Dst: MetadataBuilder::add_mapped_tags_with_parser
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:69,1
    - Dst: MetadataBuilder::add_tag
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:70,1
    - Dst: Tag::new
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - raw
    - parsers
    argTypes:
    - RawTag
    - '&RawTagParserMap'
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 3
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: MetadataBuilder::add_mapped_tags
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 3
    functionsReached:
    - '&RawTagParserMap::get'
    - MetadataBuilder::add_mapped_tags_with_parser
    - to_ascii_lowercase
    - as_str
    - Tag::new
    - MetadataBuilder::add_tag
    linkageType: ''
    returnType: '&mut Self'
    signature: 'fn add_mapped_tags(&mut self, raw: RawTag, parsers: &RawTagParserMap)
      -> &mut Self'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:3,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 83
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionName: noop_parser
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - Some
    linkageType: ''
    returnType: ''
    signature: ''
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_bool
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:109,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 9
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: parse_compilation
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - Option::map
    - parse_bool
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_compilation(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:120,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:120,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 11
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: parse_disc_number_exclusive
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_disc_number_exclusive(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_m_of_n
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:125,1
    - Dst: u32::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:126,1
    - Dst: StandardTagPair::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 127
      start: 124
    functionDepth: 11
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionName: parse_disc_number
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - u32::map
    - parse_m_of_n
    - StandardTagPair::map
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_disc_number(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:132,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:132,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 133
      start: 131
    functionDepth: 11
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionName: parse_disc_total
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_disc_total(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_m_of_n
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:168,1
    - Dst: u32::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:169,1
    - Dst: StandardTagPair::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 11
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: parse_movement_number
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - u32::map
    - parse_m_of_n
    - StandardTagPair::map
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_movement_number(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:173,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:173,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 11
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: parse_movement_total
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_movement_total(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u16>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:202,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:202,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 204
      start: 201
    functionDepth: 11
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionName: parse_original_recording_year
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u16>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_original_recording_year(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u16>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:210,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:210,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 11
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: parse_original_release_year
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u16>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_original_release_year(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:221,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:221,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 11
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: parse_part_number_exclusive
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_part_number_exclusive(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:226,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:226,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 11
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: parse_part_total
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_part_total(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_bool
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:234,1
    - Dst: Option::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 235
      start: 233
    functionDepth: 9
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionName: parse_podcast_flag
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - Option::map
    - parse_bool
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_podcast_flag(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u16>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:256,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:256,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 11
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: parse_recording_year
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u16>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_recording_year(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u16>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:265,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:265,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 267
      start: 264
    functionDepth: 11
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionName: parse_release_year
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u16>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_release_year(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:289,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:289,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 291
      start: 288
    functionDepth: 11
    functionLinenumber: 288
    functionLinenumberEnd: 291
    functionName: parse_track_number_exclusive
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_track_number_exclusive(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse_m_of_n
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:294,1
    - Dst: u32::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:295,1
    - Dst: StandardTagPair::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 296
      start: 293
    functionDepth: 11
    functionLinenumber: 293
    functionLinenumberEnd: 296
    functionName: parse_track_number
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - u32::map
    - parse_m_of_n
    - StandardTagPair::map
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_track_number(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:302,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:302,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 303
      start: 301
    functionDepth: 11
    functionLinenumber: 301
    functionLinenumberEnd: 303
    functionName: parse_track_total
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - ok
    - map
    - parse::<u64>
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_track_total(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: parse::<u8>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:334,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:334,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:334,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:338,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:339,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:340,1
    - Dst: map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 346
      start: 333
    functionDepth: 11
    functionLinenumber: 333
    functionLinenumberEnd: 346
    functionName: parse_itunes_content_advisory
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - parse::<u8>
    - Some
    - map
    - and_then
    - ok
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_itunes_content_advisory(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Regex::new
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:359,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:359,1
    - Dst: Result::captures
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:363,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:363,1
    - Dst: expect
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:363,1
    - Dst: name
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:365,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:367,1
    - Dst: String::as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:367,1
    - Dst: '&''static str::to_owned'
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:367,1
    - Dst: name
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:369,1
    - Dst: or_else
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:369,1
    - Dst: name
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:369,1
    - Dst: u32::as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:371,1
    - Dst: as_str().parse::<u8>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:371,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:371,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:371,1
    - Dst: String::map
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:379,1
    - Dst: StandardTag::Genre
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:380,1
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:380,1
    - Dst: Option::unwrap_or_else
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:379,1
    - Dst: StandardTag::Genre
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:381,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:383,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 44
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 384
      start: 348
    functionDepth: 10
    functionLinenumber: 348
    functionLinenumberEnd: 384
    functionName: parse_id3v2_genre
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - expect
    - Self::expect
    - String::as_str
    - Arc::new
    - Regex::new
    - as_str
    - or_else
    - name
    - Some
    - Option::unwrap_or_else
    - Result::captures
    - as_str().parse::<u8>
    - ok
    - and_then
    - StandardTag::Genre
    - String::map
    - '&''static str::to_owned'
    - u32::as_str
    linkageType: ''
    returnType: StandardTagPair
    signature: 'pub fn parse_id3v2_genre(v: Arc<String>) -> StandardTagPair'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: to_ascii_lowercase
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:387,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:387,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:388,1
    - Dst: Some
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:389,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 392
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 392
    functionName: parse_bool
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 2
    functionsReached:
    - as_str
    - Some
    - to_ascii_lowercase
    linkageType: ''
    returnType: Option
    signature: 'fn parse_bool(v: Arc<String>) -> Option<bool>'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Regex::new
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:398,1
    - Dst: Self::expect
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:398,1
    - Dst: Result::captures
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:403,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:403,1
    - Dst: name
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:404,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:404,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:404,1
    - Dst: as_str().parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:404,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:404,1
    - Dst: name
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:405,1
    - Dst: and_then
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:405,1
    - Dst: as_str
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:405,1
    - Dst: as_str().parse::<u64>
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:405,1
    - Dst: ok
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:405,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 1
    argNames:
    - v
    argTypes:
    - Arc<String>
    constantsTouched: []
    func_position:
      end: 409
      start: 395
    functionDepth: 10
    functionLinenumber: 395
    functionLinenumberEnd: 409
    functionName: parse_m_of_n
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 3
    functionsReached:
    - Self::expect
    - Regex::new
    - as_str
    - name
    - as_str().parse::<u64>
    - Result::captures
    - and_then
    - ok
    linkageType: ''
    returnType: (Option
    signature: 'fn parse_m_of_n(v: Arc<String>) -> (Option<u64>, Option<u64>)'
  - BBCount: 0
    BranchProfiles: []
    Callsites:
    - Dst: Arc::new
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:420,1
    - Dst: String::from
      Src: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - '&str'
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 10
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: tests::arc_string
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached:
    - String::from
    - Arc::new
    linkageType: ''
    returnType: Arc
    signature: 'fn arc_string(value: &str) -> Arc<String>'
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 437
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 437
    functionName: tests::verify_parse_m_of_n
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_parse_m_of_n()
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    constantsTouched: []
    func_position:
      end: 478
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 478
    functionName: tests::verify_parse_id3v2_genre
    functionSourceFile: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: fn verify_parse_id3v2_genre()
Fuzzer filename: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs
Fuzzing method: fuzz_target
report: name
sources:
- function_names:
  - NullChunks::parse_tag
  - ChunksReader::new
  - ChunksReader::next
  - ChunksReader::finish
  - ParseChunk::parse_and_skip_unread
  - ChunkParser::new
  - ChunkParser::parse
  - ChunkParser::parse_and_skip_unread
  - FormatPcm::make_packet_info
  - FormatAdpcm::make_packet_info
  - FormatIeeeFloat::make_packet_info
  - FormatExtensible::make_packet_info
  - FormatALaw::make_packet_info
  - FormatMuLaw::make_packet_info
  - PacketInfo::with_blocks
  - PacketInfo::without_blocks
  - PacketInfo::get_num_frames_at
  - PacketInfo::get_actual_ts
  - next_packet
  - append_format_params
  - append_data_params
  source_file: /src/symphonia/symphonia-format-riff/src/common.rs
- function_names: []
  source_file: /src/symphonia/symphonia-format-riff/src/lib.rs
- function_names:
  - WavReader::try_new
  - WavReader::score
  - WavReader::try_probe_new
  - WavReader::probe_data
  - WavReader::format_info
  - WavReader::media_info
  - WavReader::next_packet
  - WavReader::metadata
  - WavReader::chapters
  - WavReader::tracks
  - WavReader::seek
  - WavReader::into_inner
  source_file: /src/symphonia/symphonia-format-riff/src/wave/mod.rs
- function_names:
  - WaveFormatChunk::read_pcm_fmt
  - WaveFormatChunk::read_adpcm_fmt
  - WaveFormatChunk::read_ieee_fmt
  - WaveFormatChunk::read_ext_fmt
  - WaveFormatChunk::read_alaw_pcm_fmt
  - WaveFormatChunk::read_mulaw_pcm_fmt
  - WaveFormatChunk::packet_info
  - WaveFormatChunk::parse
  - WaveFormatChunk::fmt
  - FactChunk::parse
  - FactChunk::fmt
  - ListChunk::skip
  - ListChunk::parse
  - ListChunk::fmt
  - InfoChunk::parse
  - DataChunk::parse
  - parser
  - RiffWaveChunks::parse_tag
  - RiffInfoListChunks::parse_tag
  - append_fact_params
  - read_info_chunk
  - fix_wave_channel_mask
  - test_fix_channel_mask
  - map_wave_channel_count
  - test_map_wave_channel_count
  - map_amb_channel_count
  source_file: /src/symphonia/symphonia-format-riff/src/wave/chunks.rs
- function_names:
  - AiffReader::try_new
  - process_markers
  - AiffReader::score
  - AiffReader::try_probe_new
  - AiffReader::probe_data
  - AiffReader::format_info
  - AiffReader::media_info
  - AiffReader::next_packet
  - AiffReader::metadata
  - AiffReader::attachments
  - AiffReader::chapters
  - AiffReader::tracks
  - AiffReader::seek
  - AiffReader::into_inner
  source_file: /src/symphonia/symphonia-format-riff/src/aiff/mod.rs
- function_names:
  - CommonChunk::read_pcm_fmt
  - CommonChunk::read_alaw_pcm_fmt
  - CommonChunk::read_mulaw_pcm_fmt
  - CommonChunk::read_in24_fmt
  - CommonChunk::read_in32_fmt
  - CommonChunk::read_23ni_fmt
  - CommonChunk::read_fl32_fmt
  - CommonChunk::read_fl64_fmt
  - CommonChunk::read_sowt_fmt
  - CommonChunk::read_twos_fmt
  - CommonChunk::read_raw_fmt
  - CommonChunk::packet_info
  - CommonChunk::parse
  - CommonChunk::fmt
  - ChunkParser::parse_aiff
  - ChunkParser::parse_aifc
  - SoundChunk::empty
  - SoundChunk::parse
  - MarkerChunk::parse
  - AppSpecificChunk::parse
  - CommentsChunk::parse
  - TextChunk::parse
  - Id3Chunk::parse
  - parser
  - RiffAiffChunks::parse_tag
  - read_sample_rate
  - ignore_pascal_string
  - read_pascal_string
  - decode_string
  - map_aiff_channel_count
  source_file: /src/symphonia/symphonia-format-riff/src/aiff/chunks.rs
- function_names:
  - CafReader::score
  - CafReader::try_probe_new
  - CafReader::probe_data
  - CafReader::format_info
  - CafReader::media_info
  - CafReader::next_packet
  - CafReader::metadata
  - CafReader::chapters
  - CafReader::tracks
  - CafReader::seek
  - CafReader::into_inner
  - CafReader::try_new
  - CafReader::time_base
  - CafReader::seek_bounds
  - CafReader::check_file_header
  - CafReader::read_audio_description_chunk
  - CafReader::read_chunks
  source_file: /src/symphonia/symphonia-format-caf/src/demuxer.rs
- function_names:
  - Chunk::read
  - AudioDescription::read
  - AudioDescription::codec_id
  - AudioDescription::is_variable_packet_format
  - AudioData::read
  - AudioDescriptionFormatId::read
  - ChannelLayout::read
  - ChannelLayout::channels
  - ChannelDescription::read
  - PacketTable::read
  - PacketTable::fmt
  - invalid_chunk_size_error
  - read_variable_length_integer
  - tests::variable_length_integer_test
  - tests::variable_length_integers
  - tests::unterminated_variable_length_integer
  source_file: /src/symphonia/symphonia-format-caf/src/chunks.rs
- function_names: []
  source_file: /src/symphonia/symphonia-format-caf/src/lib.rs
- function_names: []
  source_file: /src/symphonia/symphonia-codec-wavpack/src/lib.rs
- function_names:
  - Resampler::resample_inner
  - Resampler::new
  - Resampler::resample
  - Resampler::flush
  - AudioBufferAdapter::read_sample_unchecked
  - AudioBufferAdapter::channels
  - AudioBufferAdapter::frames
  - AudioBufferAdapterMut::read_sample_unchecked
  - AudioBufferAdapterMut::channels
  - AudioBufferAdapterMut::frames
  - AudioBufferAdapterMut::write_sample_unchecked
  source_file: /src/symphonia/symphonia-play/src/resampler.rs
- function_names:
  - print_format
  - print_update
  - print_media
  - print_tracks
  - print_chapters
  - print_attachments
  - print_meta_revision
  - print_tags
  - print_tag
  - print_visuals
  - Bullet::fmt
  - print_one
  - print_pair_custom
  - print_pair
  - print_pair_value
  - print_header
  - print_blank
  - p::r::i::n::t::_::p::r::o::g::r::e::s::s::progress_bar
  - print_progress
  - optimal_tag_key_pad
  - pad_key
  - fmt_color_model
  - fmt_codec_name
  - fmt_codec_profile
  - fmt_size
  - fmt_dur
  - fmt_ts
  - fmt_time
  - write_time
  - FormattedTag::new
  - fmt_tag
  source_file: /src/symphonia/symphonia-play/src/ui.rs
- function_names:
  - pulseaudio::map_channels_to_pa_channelmap
  - pulseaudio::map_positioned
  - pulseaudio::map_discrete
  - try_open
  - try_open
  source_file: /src/symphonia/symphonia-play/src/output.rs
- function_names:
  - main
  - run
  - decode_only
  - play
  - play_track
  - do_reset
  - do_verification
  - dump_visuals
  - dump_visual
  source_file: /src/symphonia/symphonia-play/src/main.rs
- function_names:
  - MkvElementInfo::element_type
  - MkvElementInfo::data_type
  - MkvElementInfo::min_depth
  - MkvElementInfo::is_global
  - MkvElementInfo::is_recursive
  - MkvElementInfo::allow_unknown_size
  - MkvElementInfo::parent_id
  - MkvSchema::get_element_info
  source_file: /src/symphonia/symphonia-format-mkv/src/schema.rs
- function_names:
  - EbmlError::from
  - EbmlElementHeader::clone
  - EbmlElementHeader::read
  - EbmlElementHeader::id
  - EbmlElementHeader::pos
  - EbmlElementHeader::end
  - EbmlElementHeader::size
  - EbmlElementHeader::data_pos
  - EbmlElementHeader::data_size
  - EbmlElementHeader::depth
  - EbmlElementHeader::element_type
  - EbmlElementHeader::is_valid
  - EbmlElementHeader::is_valid_at
  - EbmlIterator::new
  - EbmlIterator::schema
  - EbmlIterator::into_inner
  - EbmlIterator::pos
  - EbmlIterator::parent
  - EbmlIterator::current
  - EbmlIterator::depth
  - EbmlIterator::push_element
  - EbmlIterator::pop_element
  - EbmlIterator::pop_elements_upto
  - EbmlIterator::save_state
  - EbmlIterator::restore_state
  - EbmlIterator::seek_to_child
  - EbmlIterator::next_element
  - EbmlIterator::next_header
  - EbmlIterator::read_master_element
  - EbmlIterator::skip_data
  - EbmlIterator::read_u64
  - EbmlIterator::read_u64_default
  - EbmlIterator::read_u64_no_default
  - EbmlIterator::read_i64
  - EbmlIterator::read_i64_default
  - EbmlIterator::read_i64_no_default
  - EbmlIterator::read_f64
  - EbmlIterator::read_f64_default
  - EbmlIterator::read_f64_no_default
  - EbmlIterator::read_date
  - EbmlIterator::read_date_default
  - EbmlIterator::read_date_no_default
  - EbmlIterator::read_string
  - EbmlIterator::read_string_default
  - EbmlIterator::read_string_no_default
  - EbmlIterator::read_binary
  - EbmlIterator::read_binary_into
  - EbmlIterator::current_or_err
  - EbmlIterator::discard_current
  - read_element_id
  - read_element_data_size
  - read_unsigned_vint
  - read_signed_vint
  - read_vint
  - tests::verify_read_element_id
  - tests::verify_read_unsigned_vint
  - tests::verify_read_signed_vint
  source_file: /src/symphonia/symphonia-format-mkv/src/ebml.rs
- function_names:
  - MkvReader::try_new
  - MkvReader::seek_track_by_ts_forward
  - MkvReader::seek_track_by_ts_atomic
  - MkvReader::seek_track_by_ts
  - MkvReader::next_element
  - MkvReader::try_probe_new
  - MkvReader::probe_data
  - MkvReader::format_info
  - MkvReader::media_info
  - MkvReader::attachments
  - MkvReader::chapters
  - MkvReader::metadata
  - MkvReader::seek
  - MkvReader::tracks
  - MkvReader::next_packet
  - MkvReader::into_inner
  - MkvReader::score
  - Error::from
  source_file: /src/symphonia/symphonia-format-mkv/src/demuxer.rs
- function_names: []
  source_file: /src/symphonia/symphonia-format-mkv/src/lib.rs
- function_names:
  - make_raw_tags
  - get_target_path
  - make_raw_tag
  - map_std_tag
  - default_target_name
  - map_total_parts
  - map_part_number
  - map_title
  - map_subtitle
  - parse_bpm
  - parse_rating
  - parse_imdb
  - parse_tvdb
  - parse_tmdb
  - parse_number
  source_file: /src/symphonia/symphonia-format-mkv/src/tags.rs
- function_names:
  - parse_flags
  - read_ebml_sizes
  - read_xiph_sizes
  - calculate_block_pts
  - FrameDurationIter::new
  - FrameDurationIter::next
  - extract_frames
  source_file: /src/symphonia/symphonia-format-mkv/src/lacing.rs
- function_names:
  - MatroskaTicks::get
  - MatroskaTicks::into_segment_ticks
  - MatroskaTicks::into_track_ticks
  - MatroskaTicks::from
  - MatroskaTicks::fmt
  - NonZeroMatroskaTicks::get
  - NonZeroMatroskaTicks::from
  - SignedMatroskaTicks::from
  - SegmentTicks::get
  - SegmentTicks::into_track_ticks
  - SegmentTicks::from
  - SegmentTicks::fmt
  - FloatingPointSegmentTicks::from
  - FloatingPointSegmentTicks::get
  - TrackTicks::get
  - TrackTicks::try_into_signed
  - TrackTicks::into_dur
  - TrackTicks::from
  - TrackTicks::fmt
  - SignedTrackTicks::get
  - SignedTrackTicks::into_ts
  - SignedTrackTicks::checked_add
  - SignedTrackTicks::checked_add_unsigned
  - SignedTrackTicks::checked_sub_unsigned
  - SignedTrackTicks::try_into_matroska_ticks
  - SignedTrackTicks::from
  - SignedTrackTicks::from
  - SignedTrackTicks::fmt
  - TrackElement::read
  - AudioElement::read
  - VideoElement::read
  - BlockAdditionMappingElement::read
  - SeekHeadElement::read
  - SeekElement::read
  - TracksElement::read
  - TracksElement::get_target_uids
  - EbmlHeaderElement::read
  - InfoElement::read
  - CuesElement::read
  - CuePointElement::read
  - CueTrackPositionsElement::read
  - BlockGroupElement::read
  - TagsElement::read
  - T::a::g::s::E::l::e::m::e::n::t::::::::i::n::t::o::_::m::e::t::a::d::a::t::a::append_to_map
  - T::a::g::s::E::l::e::m::e::n::t::::::::i::n::t::o::_::m::e::t::a::d::a::t::a::append_to_map_all
  - T::a::g::s::E::l::e::m::e::n::t::::::::i::n::t::o::_::m::e::t::a::d::a::t::a::append_to_media
  - TagsElement::into_metadata
  - TagElement::read
  - TargetsElement::read
  - SimpleTagElement::read
  - AttachedFileElement::read
  - AttachmentsElement::read
  - AttachmentsElement::get_target_uids
  - AttachmentsElement::into_attachments
  - ChaptersElement::read
  - ChaptersElement::get_target_uids
  - ChaptersElement::into_chapter_group
  - EditionEntryElement::read
  - EditionEntryElement::get_target_uids
  - EditionEntryElement::into_chapter_group
  - EditionDisplayElement::read
  - ChapterAtomElement::read
  - ChapterAtomElement::get_target_uids
  - ChapterAtomElement::into_chapter_group_item
  - ChapterDisplayElement::read
  source_file: /src/symphonia/symphonia-format-mkv/src/segment.rs
- function_names:
  - make_track_codec_params
  - make_audio_codec_params
  - make_video_codec_params
  - make_subtitle_codec_params
  - vorbis_extra_data_from_codec_private
  - flac_extra_data_from_codec_private
  - get_codec_id
  - get_codec_profile_and_level
  source_file: /src/symphonia/symphonia-format-mkv/src/codecs.rs
- function_names: []
  source_file: /src/symphonia/symphonia-common/src/lib.rs
- function_names: []
  source_file: /src/symphonia/symphonia-common/src/apple/mod.rs
- function_names:
  - MagicCookie::read
  source_file: /src/symphonia/symphonia-common/src/apple/audio/alac.rs
- function_names: []
  source_file: /src/symphonia/symphonia-common/src/apple/audio/mod.rs
- function_names: []
  source_file: /src/symphonia/symphonia-common/src/xiph/mod.rs
- function_names: []
  source_file: /src/symphonia/symphonia-common/src/xiph/audio/mod.rs
- function_names:
  - vorbis_channels_to_channels
  - unpack_xiph_laced_extradata
  - tests::test_unpack_xiph_laced_extradata_valid
  - tests::test_unpack_xiph_laced_extradata_truncated
  - tests::test_unpack_xiph_laced_extradata_large_sizes
  - tests::test_unpack_xiph_laced_extradata_empty
  - tests::test_unpack_xiph_laced_extradata_invalid_count
  - tests::test_unpack_xiph_laced_extradata_truncated_lacing
  - tests::test_unpack_xiph_laced_extradata_no_data_after_lacing
  source_file: /src/symphonia/symphonia-common/src/xiph/audio/vorbis/mod.rs
- function_names:
  - OpusHead::read
  source_file: /src/symphonia/symphonia-common/src/xiph/audio/opus/mod.rs
- function_names:
  - flac_channels_to_channels
  - StreamInfo::read
  - StreamInfo::is_valid_size
  - MetadataBlockHeader::read
  source_file: /src/symphonia/symphonia-common/src/xiph/audio/flac/mod.rs
- function_names: []
  source_file: /src/symphonia/symphonia-common/src/mpeg/mod.rs
- function_names:
  - AVCDecoderConfigurationRecord::read
  - HEVCDecoderConfigurationRecord::read
  - DOVIDecoderConfigurationRecord::read
  source_file: /src/symphonia/symphonia-common/src/mpeg/video/mod.rs
- function_names:
  - read_object_descriptor_header
  - codec_id_from_object_type_indication
  - ESDescriptor::read
  - DecoderConfigDescriptor::read
  - DecoderSpecificInfo::read
  - SLConfigDescriptor::read
  source_file: /src/symphonia/symphonia-common/src/mpeg/formats/mod.rs
- function_names:
  - AudioObjectType::fmt
  - get_mpeg4_audio_object_type_by_index
  - get_mpeg4_audio_sample_rate_by_index
  - get_mpeg4_audio_channels_by_config_index
  - AudioSpecificConfig::read
  - AudioSpecificConfig::read_audio_object_type
  - AudioSpecificConfig::read_sampling_frequency
  - AudioSpecificConfig::read_channel_config
  - get_audio_codec_profile
  source_file: /src/symphonia/symphonia-common/src/mpeg/audio/mod.rs
- function_names:
  - MoofSegment::new
  - MoofSegment::try_get_traf
  - MoofSegment::sequence_num
  - MoofSegment::all_tracks_ended
  - MoofSegment::sample_timing
  - MoofSegment::ts_sample
  - MoofSegment::sample_data
  - MoofSegment::track_sample_range
  - MoofSegment::track_ts_range
  - get_chunk_offset
  - MoovSegment::new
  - MoovSegment::sequence_num
  - MoovSegment::all_tracks_ended
  - MoovSegment::sample_timing
  - MoovSegment::ts_sample
  - MoovSegment::sample_data
  - MoovSegment::track_sample_range
  - MoovSegment::track_ts_range
  source_file: /src/symphonia/symphonia-format-isomp4/src/stream.rs
- function_names:
  - TrackState::make
  - TimeSpan::default
  - TimeSpan::new
  - IsoMp4Reader::try_new
  - IsoMp4Reader::next_sample_info
  - IsoMp4Reader::consume_next_sample
  - IsoMp4Reader::try_read_more_segments
  - IsoMp4Reader::seek_track_by_time
  - IsoMp4Reader::seek_track_by_ts
  - IsoMp4Reader::score
  - IsoMp4Reader::try_probe_new
  - IsoMp4Reader::probe_data
  - IsoMp4Reader::format_info
  - IsoMp4Reader::media_info
  - IsoMp4Reader::next_packet
  - IsoMp4Reader::metadata
  - IsoMp4Reader::tracks
  - IsoMp4Reader::seek
  - IsoMp4Reader::into_inner
  - Error::from
  source_file: /src/symphonia/symphonia-format-isomp4/src/demuxer.rs
- function_names: []
  source_file: /src/symphonia/symphonia-format-isomp4/src/lib.rs
- function_names:
  - FpU16::new
  - FpU16::parse_raw
  - f64::from
  - FpU8::new
  - FpU8::parse_raw
  - f64::from
  - f32::from
  - FpI8::new
  - FpI8::parse_raw
  - f64::from
  - f32::from
  source_file: /src/symphonia/symphonia-format-isomp4/src/fp.rs
- function_names:
  - FlacAtom::read
  - FlacAtom::fill_audio_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/flac.rs
- function_names:
  - TrunAtom::is_sample_duration_present
  - TrunAtom::is_first_sample_duration_present
  - TrunAtom::is_sample_size_present
  - TrunAtom::is_first_sample_size_present
  - TrunAtom::are_sample_flags_present
  - TrunAtom::are_sample_composition_time_offsets_present
  - TrunAtom::total_duration
  - TrunAtom::total_size
  - TrunAtom::sample_timing
  - TrunAtom::sample_size
  - TrunAtom::sample_offset
  - TrunAtom::ts_sample
  - TrunAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/trun.rs
- function_names:
  - MdiaAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/mdia.rs
- function_names:
  - UdtaAtom::take_metadata
  - UdtaAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/udta.rs
- function_names:
  - StssAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/stss.rs
- function_names:
  - SidxAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/sidx.rs
- function_names:
  - MvhdAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/mvhd.rs
- function_names:
  - OpusAtom::read
  - OpusAtom::fill_audio_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/opus.rs
- function_names:
  - StblAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/stbl.rs
- function_names:
  - Dec3Atom::read
  - Dec3Atom::fill_audio_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/dec3.rs
- function_names:
  - Dac3Atom::read
  - Dac3Atom::fill_audio_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/dac3.rs
- function_names:
  - parse_language
  - MdhdAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/mdhd.rs
- function_names:
  - TrafAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/traf.rs
- function_names:
  - TrexAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/trex.rs
- function_names:
  - AlacAtom::read
  - AlacAtom::fill_audio_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/alac.rs
- function_names:
  - StszAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/stsz.rs
- function_names:
  - DataType::from
  - parse_no_type
  - parse_utf8
  - parse_utf16
  - parse_signed_int8
  - parse_signed_int16
  - parse_signed_int32
  - parse_signed_int64
  - parse_var_signed_int
  - parse_unsigned_int8
  - parse_unsigned_int16
  - parse_unsigned_int32
  - parse_unsigned_int64
  - parse_var_unsigned_int
  - parse_float32
  - parse_float64
  - parse_tag_value
  - add_generic_tag
  - add_flag_tag
  - add_pair_tag
  - add_visual_tag
  - add_advisory_tag
  - add_media_type_tag
  - add_id3v1_genre_tag
  - add_rating_tag
  - add_freeform_tag
  - MetaTagDataAtom::read
  - MetaTagNamespaceAtom::read
  - MetaTagAtom::full_name
  - MetaTagAtom::read
  - map_std_str
  - map_std_bool
  - map_std_uint
  - IlstAtom::read
  - get_raw_tag_key
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/ilst.rs
- function_names:
  - AvcCAtom::read
  - AvcCAtom::fill_video_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/avcc.rs
- function_names:
  - MehdAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/mehd.rs
- function_names:
  - AtomType::from
  - AtomError::from
  - AtomError::from
  - decode_error
  - unsupported_error
  - AtomHeader::read
  - AtomHeader::atom_type
  - AtomHeader::end
  - AtomHeader::pos
  - AtomHeader::data_pos
  - AtomHeader::size
  - AtomHeader::data_size
  - AtomIterator::new
  - AtomIterator::into_inner
  - AtomIterator::pending
  - AtomIterator::next_header
  - AtomIterator::skip_atom
  - AtomIterator::read_atom
  - AtomIterator::seek_atom_start
  - AtomIterator::seek_atom_end
  - AtomIterator::seek_reader
  - AtomIterator::data_left
  - AtomIterator::read_raw_boxed_slice_exact
  - AtomIterator::ensure_no_pending_atom
  - AtomIterator::ensure_parent_atom_data
  - AtomIterator::read_extended_header
  - AtomIterator::read_buf_exact
  - AtomIterator::read_boxed_slice_exact
  - AtomIterator::ignore_bytes
  - AtomIterator::read_null_terminated_utf8
  - AtomIterator::read_byte
  - AtomIterator::read_double_bytes
  - AtomIterator::read_triple_bytes
  - AtomIterator::read_quad_bytes
  - AtomIterator::read_u8
  - AtomIterator::read_i8
  - AtomIterator::read_u16
  - AtomIterator::read_i16
  - AtomIterator::read_u24
  - AtomIterator::read_i24
  - AtomIterator::read_u32
  - AtomIterator::read_i32
  - AtomIterator::read_u64
  - AtomIterator::read_i64
  - AtomIterator::read_f32
  - AtomIterator::read_f64
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/mod.rs
- function_names:
  - HdlrAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/hdlr.rs
- function_names:
  - StsdAtom::read
  - StsdAtom::make_codec_params
  - AudioSampleEntry::make_codec_params
  - AudioSampleEntry::read
  - is_pcm_codec
  - pcm_codec_id
  - bytes_per_pcm_sample
  - lpcm_codec_id
  - pcm_channels
  - lpcm_channels
  - VisualSampleEntry::make_codec_params
  - VisualSampleEntry::read
  - SubtitleSampleEntry::make_codec_params
  - SubtitleSampleEntry::read
  - BtrtAtom::read
  - TxtcAtom::read
  - ClapAtom::read
  - PaspAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/stsd.rs
- function_names:
  - MfhdAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/mfhd.rs
- function_names:
  - HvcCAtom::read
  - HvcCAtom::fill_video_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/hvcc.rs
- function_names:
  - MvexAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/mvex.rs
- function_names:
  - Co64Atom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/co64.rs
- function_names:
  - StscAtom::find_entry_for_sample
  - StscAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/stsc.rs
- function_names:
  - EdtsAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/edts.rs
- function_names:
  - MoovAtom::take_metadata
  - MoovAtom::is_fragmented
  - MoovAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/moov.rs
- function_names:
  - CttsAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/ctts.rs
- function_names:
  - ElstAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/elst.rs
- function_names:
  - TkhdAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/tkhd.rs
- function_names:
  - TfhdAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/tfhd.rs
- function_names:
  - MetaAtom::fmt
  - MetaAtom::take_metadata
  - MetaAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/meta.rs
- function_names:
  - MoofAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/moof.rs
- function_names:
  - SmhdAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/smhd.rs
- function_names:
  - MinfAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/minf.rs
- function_names:
  - StcoAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/stco.rs
- function_names:
  - EsdsAtom::read
  - EsdsAtom::fill_audio_sample_entry
  - EsdsAtom::fill_video_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/esds.rs
- function_names:
  - DoviAtom::read
  - DoviAtom::fill_video_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/dovi.rs
- function_names:
  - SttsAtom::find_timing_for_sample
  - SttsAtom::find_sample_for_timestamp
  - SttsAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/stts.rs
- function_names:
  - TrakAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/trak.rs
- function_names:
  - WaveAtom::read
  - WaveAtom::fill_audio_sample_entry
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/wave.rs
- function_names:
  - FtypAtom::read
  source_file: /src/symphonia/symphonia-format-isomp4/src/atoms/ftyp.rs
- function_names:
  - read_pcm_signed
  - read_pcm_unsigned
  - read_pcm_floating
  - read_pcm_transfer_func
  - alaw_to_linear
  - mulaw_to_linear
  - is_supported_pcm_codec
  - PcmDecoder::try_new
  - PcmDecoder::decode_inner
  - PcmDecoder::reset
  - PcmDecoder::codec_info
  - PcmDecoder::codec_params
  - PcmDecoder::decode_ref
  - PcmDecoder::finalize
  - PcmDecoder::last_decoded
  - PcmDecoder::try_registry_new
  - PcmDecoder::supported_codecs
  source_file: /src/symphonia/symphonia-codec-pcm/src/lib.rs
- function_names:
  - test_decode
  - invalid_channels_aac
  source_file: /src/symphonia/symphonia-codec-aac/tests/tests.rs
- function_names: []
  source_file: /src/symphonia/symphonia-codec-aac/src/lib.rs
- function_names:
  - AdtsReader::try_new
  - AdtsReader::score
  - AdtsHeader::read_body
  - AdtsHeader::is_sync_word
  - AdtsHeader::sync
  - AdtsHeader::read_no_resync
  - AdtsHeader::read
  - AdtsHeader::header_len
  - AdtsHeader::payload_len
  - AdtsReader::try_probe_new
  - AdtsReader::probe_data
  - AdtsReader::format_info
  - AdtsReader::media_info
  - AdtsReader::next_packet
  - AdtsReader::metadata
  - AdtsReader::chapters
  - AdtsReader::tracks
  - AdtsReader::seek
  - AdtsReader::into_inner
  - approximate_frame_count
  source_file: /src/symphonia/symphonia-codec-aac/src/adts.rs
- function_names:
  - generate_window
  - bessel_i0
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/window.rs
- function_names:
  - Lcg::new
  - Lcg::next
  - GASubbandInfo::find
  - GASubbandInfo::find_idx
  - validate
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/common.rs
- function_names:
  - Dsp::new
  - Dsp::synth
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/dsp.rs
- function_names:
  - AacDecoder::try_new
  - AacDecoder::set_pair
  - AacDecoder::decode_ga
  - AacDecoder::decode_inner
  - AacDecoder::reset
  - AacDecoder::codec_info
  - AacDecoder::codec_params
  - AacDecoder::decode_ref
  - AacDecoder::finalize
  - AacDecoder::last_decoded
  - AacDecoder::try_registry_new
  - AacDecoder::supported_codecs
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/mod.rs
- function_names:
  - QuadsCodebook::read_quant
  - QuadsCodebook::new
  - PairsCodebook::read_dequant
  - PairsCodebook::new
  - EscapeCodebook::read_quant
  - EscapeCodebook::new
  - make_raw_codebook
  - make_value_codebook
  - make_basic_codebook
  - iquant
  - signed_pair
  - unsigned_pair
  - escape_pair
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/codebooks.rs
- function_names:
  - ChannelPair::new
  - ChannelPair::reset
  - ChannelPair::decode_ga_sce
  - ChannelPair::decode_ga_cpe
  - ChannelPair::synth_audio
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/cpe.rs
- function_names:
  - TnsCoeffs::new
  - TnsCoeffs::read
  - Tns::read
  - Tns::synth
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/ics/tns.rs
- function_names:
  - LtpData::read
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/ics/ltp.rs
- function_names:
  - GainControl::read
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/ics/gain.rs
- function_names:
  - IcsInfo::new
  - IcsInfo::decode
  - IcsInfo::copy_from_common
  - IcsInfo::get_group_start
  - Ics::new
  - Ics::reset
  - Ics::decode_section_data
  - Ics::is_zero
  - Ics::is_intensity
  - Ics::is_noise
  - Ics::get_intensity_dir
  - Ics::decode_info
  - Ics::decode_scale_factor_data
  - Ics::get_bands
  - Ics::decode_spectrum
  - Ics::decode
  - Ics::synth_channel
  - decode_noise
  - decode_sign
  - decode_quads_unsigned
  - decode_quads_signed
  - decode_pairs_signed
  - decode_pairs_unsigned
  - decode_pairs_unsigned_escape
  - read_escape
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/ics/mod.rs
- function_names:
  - iquant
  - requant
  - Pulse::read
  - Pulse::synth
  source_file: /src/symphonia/symphonia-codec-aac/src/aac/ics/pulse.rs
- function_names:
  - build_ffmpeg_command
  - build_flac_command
  - build_mpg123_command
  - build_oggdec_command
  - RefProcess::try_spawn
  - DecoderInstance::try_open
  - DecoderInstance::samples_per_frame
  - DecoderInstance::next_audio_buf
  - DecoderInstance::flush
  - run_check
  - run_test
  - main
  source_file: /src/symphonia/symphonia-check/src/main.rs
- function_names: []
  source_file: /src/symphonia/symphonia-codec-opus/src/lib.rs
- function_names:
  - check_header
  - is_frame_header_word_synced
  - sync_frame
  - parse_frame_header
  - read_frame_header
  - read_frame_header_word_no_sync
  source_file: /src/symphonia/symphonia-bundle-mp3/src/header.rs
- function_names:
  - SynthesisState::default
  - synthesis
  - dct32
  - tests::dct32_analytical
  - tests::verify_dct32
  source_file: /src/symphonia/symphonia-bundle-mp3/src/synthesis.rs
- function_names: []
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer12.rs
- function_names:
  - ChannelMode::count
  - ChannelMode::channels
  - FrameHeader::is_mpeg1
  - FrameHeader::is_mpeg2p5
  - FrameHeader::codec
  - FrameHeader::spec
  - FrameHeader::num_frames
  - FrameHeader::duration
  - FrameHeader::n_granules
  - FrameHeader::n_channels
  - FrameHeader::is_intensity_stereo
  - FrameHeader::side_info_len
  source_file: /src/symphonia/symphonia-bundle-mp3/src/common.rs
- function_names:
  - State::new
  - MpaDecoder::try_new
  - MpaDecoder::decode_inner
  - MpaDecoder::codec_info
  - MpaDecoder::codec_params
  - MpaDecoder::reset
  - MpaDecoder::decode_ref
  - MpaDecoder::finalize
  - MpaDecoder::last_decoded
  - MpaDecoder::try_registry_new
  - MpaDecoder::supported_codecs
  source_file: /src/symphonia/symphonia-bundle-mp3/src/decoder.rs
- function_names:
  - MpaReader::score
  - MpaReader::try_probe_new
  - MpaReader::probe_data
  - MpaReader::format_info
  - MpaReader::media_info
  - MpaReader::next_packet
  - MpaReader::metadata
  - MpaReader::chapters
  - MpaReader::tracks
  - MpaReader::seek
  - MpaReader::into_inner
  - MpaReader::try_new
  - MpaReader::preseek_coarse
  - MpaReader::preseek_accurate
  - read_mpeg_frame
  - read_mpeg_frame_strict
  - is_frame_header_similar
  - read_main_data_begin
  - estimate_num_mpeg_frames
  - try_read_info_tag
  - try_read_info_tag_inner
  - parse_lame_tag_replaygain
  - is_maybe_info_tag
  - try_read_vbri_tag
  - try_read_vbri_tag_inner
  - is_maybe_vbri_tag
  source_file: /src/symphonia/symphonia-bundle-mp3/src/demuxer.rs
- function_names: []
  source_file: /src/symphonia/symphonia-bundle-mp3/src/lib.rs
- function_names:
  - find_quant_class
  - find_sb_quant_info
  - find_sb_info
  - dequantize
  - Layer2::new
  - Layer2::decode
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer2/mod.rs
- function_names:
  - zero
  - read_huffman_samples
  - requantize_long
  - requantize_short
  - requantize
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer3/requantize.rs
- function_names:
  - process_mid_side
  - process_intensity
  - is_zero_band
  - process_intensity_long_block
  - process_intensity_short_block
  - stereo
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer3/stereo.rs
- function_names: []
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer3/common.rs
- function_names:
  - BitResevoir::new
  - BitResevoir::fill
  - BitResevoir::consume
  - BitResevoir::bytes_ref
  - BitResevoir::clear
  - FrameData::granules_mut
  - GranuleChannel::default
  - GranuleChannel::fmt
  - Layer3::new
  - Layer3::read_main_data
  - Layer3::decode
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer3/mod.rs
- function_names:
  - mpeg_gen_value
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer3/codebooks.rs
- function_names:
  - reorder
  - antialias
  - hybrid_synthesis
  - imdct12_win
  - frequency_inversion
  - tests::imdct12_analytical
  - tests::verify_imdct12_win
  - imdct36::imdct36
  - imdct36::dct_iv
  - imdct36::sdct_ii_18
  - imdct36::sdct_ii_9
  - imdct36::imdct36_analytical
  - imdct36::verify_imdct36
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer3/hybrid_synthesis.rs
- function_names:
  - read_granule_channel_side_info
  - read_granule_side_info
  - read_side_info
  - read_scale_factors_mpeg1
  - read_scale_factors_mpeg2
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer3/bitstream.rs
- function_names:
  - dequantize
  - Layer1::new
  - Layer1::decode
  source_file: /src/symphonia/symphonia-bundle-mp3/src/layer1/mod.rs
- function_names:
  - map_channels
  - ElementChannel::try_read
  - ElementChannel::read_residuals
  - ElementChannel::predict
  - AlacDecoder::try_new
  - AlacDecoder::decode_inner
  - AlacDecoder::reset
  - AlacDecoder::codec_info
  - AlacDecoder::codec_params
  - AlacDecoder::decode_ref
  - AlacDecoder::finalize
  - AlacDecoder::last_decoded
  - AlacDecoder::try_registry_new
  - AlacDecoder::supported_codecs
  - decode_sce_or_cpe
  - lg3a
  - read_rice_code
  - rice_code_to_signed
  - clip_msbs
  - decorrelate_mid_side
  source_file: /src/symphonia/symphonia-codec-alac/src/lib.rs
- function_names:
  - read_preamble
  - decode_mono
  - decode_stereo
  source_file: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_qt.rs
- function_names:
  - AdpcmImaBlockStatus::expand_nibble
  source_file: /src/symphonia/symphonia-codec-adpcm/src/common_ima.rs
- function_names:
  - Nibble::get_nibble
  - u16_to_i32
  - from_i16_shift
  source_file: /src/symphonia/symphonia-codec-adpcm/src/common.rs
- function_names:
  - is_supported_adpcm_codec
  - InnerDecoder::decode_mono_fn
  - InnerDecoder::decode_stereo_fn
  - AdpcmDecoder::try_new
  - AdpcmDecoder::decode_inner
  - AdpcmDecoder::reset
  - AdpcmDecoder::codec_info
  - AdpcmDecoder::codec_params
  - AdpcmDecoder::decode_ref
  - AdpcmDecoder::finalize
  - AdpcmDecoder::last_decoded
  - AdpcmDecoder::try_registry_new
  - AdpcmDecoder::supported_codecs
  source_file: /src/symphonia/symphonia-codec-adpcm/src/lib.rs
- function_names:
  - check_block_predictor
  - signed_nibble
  - AdpcmMsBlockStatus::read_mono_preamble
  - AdpcmMsBlockStatus::read_stereo_preamble
  - AdpcmMsBlockStatus::expand_nibble
  - decode_mono
  - decode_stereo
  source_file: /src/symphonia/symphonia-codec-adpcm/src/codec_ms.rs
- function_names:
  - read_preamble
  - decode_mono
  - decode_stereo
  source_file: /src/symphonia/symphonia-codec-adpcm/src/codec_ima_wav.rs
- function_names:
  - Packet::new
  - Packet::block_dur
  - Packet::as_buf_reader
  - Packet::as_packet_ref
  - Packet::fmt
  - PacketRef::new
  - PacketRef::block_dur
  - PacketRef::as_buf_reader
  - PacketRef::fmt
  - PacketRef::from
  - tests::verify_packet_ref_creation
  - tests::verify_packet_to_packet_ref
  source_file: /src/symphonia/symphonia-core/src/packet.rs
- function_names:
  - FourCc::new
  - FourCc::try_new
  - FourCc::get
  - FourCc::fmt
  - Limit::limit_or_default
  source_file: /src/symphonia/symphonia-core/src/common.rs
- function_names:
  - SeekErrorKind::as_str
  - Error::fmt
  - Error::cause
  - Error::from
  - decode_error
  - seek_error
  - unsupported_error
  - limit_error
  - reset_error
  source_file: /src/symphonia/symphonia-core/src/errors.rs
- function_names:
  - Timestamp::new
  - Timestamp::get
  - Timestamp::is_zero
  - Timestamp::is_negative
  - Timestamp::is_positive
  - Timestamp::checked_add
  - Timestamp::checked_sub
  - Timestamp::saturating_add
  - Timestamp::saturating_sub
  - Timestamp::checked_delta
  - Timestamp::saturating_delta
  - Timestamp::checked_add_delta
  - Timestamp::checked_sub_delta
  - Timestamp::saturating_add_delta
  - Timestamp::saturating_sub_delta
  - Timestamp::abs_delta
  - Timestamp::duration_from
  - Timestamp::duration_to
  - Timestamp::align_towards_zero
  - Timestamp::align_down
  - Timestamp::from
  - Timestamp::try_from
  - Timestamp::from
  - Timestamp::from
  - Timestamp::from
  - Timestamp::from
  - Timestamp::from
  - Timestamp::from
  - Timestamp::fmt
  - Duration::new
  - Duration::get
  - Duration::is_zero
  - Duration::checked_add
  - Duration::checked_div
  - Duration::checked_div_euclid
  - Duration::checked_mul
  - Duration::checked_sub
  - Duration::saturating_add
  - Duration::saturating_div
  - Duration::saturating_mul
  - Duration::saturating_sub
  - Duration::align_towards_zero
  - Duration::align_down
  - Duration::timestamp_from
  - Duration::from
  - Duration::try_from
  - Duration::from
  - Duration::try_from
  - Duration::from
  - Duration::try_from
  - Duration::from
  - Duration::try_from
  - Duration::fmt
  - Delta::get
  - Delta::is_zero
  - Delta::is_negative
  - Delta::is_positive
  - Delta::checked_abs
  - Delta::unsigned_abs
  - Delta::fmt
  - Time::try_new
  - Time::try_from_nanos_i128
  - Time::try_from_nanos_u128
  - Time::try_from_secs_f64
  - Time::from_nanos
  - Time::from_nanos_u64
  - Time::from_micros
  - Time::from_micros_u64
  - Time::from_millis
  - Time::from_millis_u64
  - Time::from_ss
  - Time::from_mmss
  - Time::from_hhmmss
  - Time::is_zero
  - Time::is_positive
  - Time::is_negative
  - Time::as_nanos
  - Time::as_micros
  - Time::as_millis
  - Time::as_secs
  - Time::as_mins
  - Time::as_hours
  - Time::as_secs_f64
  - Time::parts
  - Time::checked_neg
  - Time::checked_add
  - Time::checked_add_nanos
  - Time::checked_add_micros
  - Time::checked_add_millis
  - Time::checked_add_secs
  - Time::checked_add_mins
  - Time::checked_add_hours
  - Time::checked_sub
  - Time::checked_sub_nanos
  - Time::checked_sub_micros
  - Time::checked_sub_millis
  - Time::checked_sub_secs
  - Time::checked_sub_mins
  - Time::checked_sub_hours
  - Time::from
  - Time::from
  - Time::from
  - TimeBase::default
  - TimeBase::new
  - TimeBase::try_new
  - TimeBase::from_recip
  - TimeBase::try_from_recip
  - TimeBase::calc_time
  - TimeBase::calc_time_saturating
  - TimeBase::calc_timestamp
  - TimeBase::scale
  - TimeBase::reduce
  - f64::from
  - TimeBase::fmt
  - tests::verify_time
  - tests::verify_timebase
  - tests::verify_timebase_reduce
  - t::e::s::t::s::::::::v::e::r::i::f::y::_::t::s::_::r::o::u::n::d::t::r::i::p::_::w::i::t::h::_::t::i::m::e::test_roundtrip
  - tests::verify_ts_roundtrip_with_time
  source_file: /src/symphonia/symphonia-core/src/units.rs
- function_names:
  - bits::sign_extend_leq8_to_i8
  - bits::sign_extend_leq16_to_i16
  - bits::sign_extend_leq32_to_i32
  - bits::sign_extend_leq64_to_i64
  - bits::mask_at
  - bits::mask_upper_eq
  - bits::mask_upper
  - bits::mask_lower_eq
  - bits::mask_lower
  - bits::mask_range
  - bits::contains_ones_byte_u16
  - bits::contains_ones_byte_u32
  - bits::contains_ones_byte_u64
  - bits::verify_masks
  - clamp::clamp_u8
  - clamp::clamp_i8
  - clamp::clamp_u16
  - clamp::clamp_i16
  - clamp::clamp_u24
  - clamp::clamp_i24
  - clamp::clamp_u32
  - clamp::clamp_i32
  - clamp::clamp_f32
  - clamp::clamp_f64
  - clamp::verify_clamp
  - text::decode_ascii_lossy
  - text::decode_isoiec8859_1_lossy
  - text::decode_iso8859_1_lossy
  - text::decode_cp1252_lossy
  - text::decode_utf16be_lossy
  - text::decode_utf16le_lossy
  - text::decode_utf16_bytes
  - text::null
  - text::not_null
  - text::control
  - text::not_control
  - text::c0_control
  - text::not_c0_control
  - text::c1_control
  - text::not_c1_control
  - text::ascii_text
  - text::not_ascii_text
  - text::verify_decode_utf16be
  - text::verify_decode_utf16le
  source_file: /src/symphonia/symphonia-core/src/util.rs
- function_names: []
  source_file: /src/symphonia/symphonia-core/src/lib.rs
- function_names:
  - MetadataId::new
  - MetadataId::from
  - MetadataId::fmt
  - MetadataOptions::limit_tag_bytes
  - MetadataOptions::limit_visual_bytes
  - impl_from_for_value
  - buffer_to_hex_string
  - RawValue::fmt
  - RawTagSubField::new
  - RawTag::new
  - RawTag::new_with_sub_fields
  - Tag::new
  - Tag::new_std
  - Tag::new_from_parts
  - Tag::has_std_tag
  - ColorModel::bits_per_pixel
  - ColorModel::has_alpha_channel
  - MetadataBuilder::new
  - MetadataBuilder::add_tag
  - MetadataBuilder::add_visual
  - MetadataBuilder::add_track
  - MetadataBuilder::build
  - PerTrackMetadataBuilder::new
  - PerTrackMetadataBuilder::add_tag
  - PerTrackMetadataBuilder::add_visual
  - PerTrackMetadataBuilder::build
  - Metadata::is_latest
  - Metadata::current
  - Metadata::skip_to_latest
  - Metadata::pop
  - MetadataLog::metadata
  - MetadataLog::push
  - MetadataLog::append
  - MetadataLog::push_front
  - MetadataLog::append_front
  source_file: /src/symphonia/symphonia-core/src/meta.rs
- function_names:
  - out_of_bounds_error
  - ScopedStream::new
  - ScopedStream::inner
  - ScopedStream::inner_mut
  - ScopedStream::ignore
  - ScopedStream::into_inner
  - ScopedStream::byte_len
  - ScopedStream::bytes_read
  - ScopedStream::bytes_available
  - ScopedStream::read_byte
  - ScopedStream::read_double_bytes
  - ScopedStream::read_triple_bytes
  - ScopedStream::read_quad_bytes
  - ScopedStream::read_buf
  - ScopedStream::read_buf_exact
  - ScopedStream::scan_bytes_aligned
  - ScopedStream::ignore_bytes
  - ScopedStream::pos
  - ScopedStream::ensure_seekback_buffer
  - ScopedStream::unread_buffer_len
  - ScopedStream::read_buffer_len
  - ScopedStream::seek_buffered
  - ScopedStream::seek_buffered_rel
  source_file: /src/symphonia/symphonia-core/src/io/scoped_stream.rs
- function_names:
  - underrun_error
  - BufReader::new
  - BufReader::scan_bytes_ref
  - BufReader::scan_bytes_aligned_ref
  - BufReader::read_buf_bytes_ref
  - BufReader::read_buf_bytes_available_ref
  - BufReader::read_byte
  - BufReader::read_double_bytes
  - BufReader::read_triple_bytes
  - BufReader::read_quad_bytes
  - BufReader::read_buf
  - BufReader::read_buf_exact
  - BufReader::scan_bytes_aligned
  - BufReader::ignore_bytes
  - BufReader::pos
  - BufReader::byte_len
  - BufReader::bytes_read
  - BufReader::bytes_available
  source_file: /src/symphonia/symphonia-core/src/io/buf_reader.rs
- function_names:
  - unexpected_eof_error
  - MediaSourceStreamOptions::default
  - MediaSourceStream::new
  - MediaSourceStream::is_buffer_exhausted
  - MediaSourceStream::fetch
  - MediaSourceStream::fetch_or_eof
  - MediaSourceStream::consume
  - MediaSourceStream::continguous_buf
  - MediaSourceStream::reset
  - MediaSourceStream::is_seekable
  - MediaSourceStream::byte_len
  - MediaSourceStream::read
  - MediaSourceStream::seek
  - MediaSourceStream::read_byte
  - MediaSourceStream::read_double_bytes
  - MediaSourceStream::read_triple_bytes
  - MediaSourceStream::read_quad_bytes
  - MediaSourceStream::read_buf
  - MediaSourceStream::read_buf_exact
  - MediaSourceStream::scan_bytes_aligned
  - MediaSourceStream::ignore_bytes
  - MediaSourceStream::pos
  - MediaSourceStream::ensure_seekback_buffer
  - MediaSourceStream::unread_buffer_len
  - MediaSourceStream::read_buffer_len
  - MediaSourceStream::seek_buffered
  - MediaSourceStream::seek_buffered_rel
  - tests::generate_random_bytes
  - tests::verify_mss_read
  - tests::verify_mss_read_to_end
  - tests::verify_mss_seek_buffered
  - tests::verify_reading_be
  - tests::verify_reading_le
  source_file: /src/symphonia/symphonia-core/src/io/media_source_stream.rs
- function_names:
  - Monitor::process_double_bytes
  - Monitor::process_triple_bytes
  - Monitor::process_quad_bytes
  - MonitorStream::new
  - MonitorStream::inner
  - MonitorStream::inner_mut
  - MonitorStream::into_inner
  - MonitorStream::monitor
  - MonitorStream::monitor_mut
  - MonitorStream::read_byte
  - MonitorStream::read_double_bytes
  - MonitorStream::read_triple_bytes
  - MonitorStream::read_quad_bytes
  - MonitorStream::read_buf
  - MonitorStream::read_buf_exact
  - MonitorStream::scan_bytes_aligned
  - MonitorStream::ignore_bytes
  - MonitorStream::pos
  source_file: /src/symphonia/symphonia-core/src/io/monitor_stream.rs
- function_names:
  - std::fs::File::is_seekable
  - std::fs::File::byte_len
  - io::Cursor::is_seekable
  - io::Cursor::byte_len
  - ReadOnlySource::new
  - ReadOnlySource::get_ref
  - ReadOnlySource::get_mut
  - ReadOnlySource::into_inner
  - ReadOnlySource::is_seekable
  - ReadOnlySource::byte_len
  - ReadOnlySource::read
  - ReadOnlySource::seek
  - ReadBytes::read_u8
  - ReadBytes::read_i8
  - ReadBytes::read_u16
  - ReadBytes::read_i16
  - ReadBytes::read_be_u16
  - ReadBytes::read_be_i16
  - ReadBytes::read_u24
  - ReadBytes::read_i24
  - ReadBytes::read_be_u24
  - ReadBytes::read_be_i24
  - ReadBytes::read_u32
  - ReadBytes::read_i32
  - ReadBytes::read_be_u32
  - ReadBytes::read_be_i32
  - ReadBytes::read_u64
  - ReadBytes::read_i64
  - ReadBytes::read_be_u64
  - ReadBytes::read_be_i64
  - ReadBytes::read_f32
  - ReadBytes::read_be_f32
  - ReadBytes::read_f64
  - ReadBytes::read_be_f64
  - ReadBytes::read_boxed_slice
  - ReadBytes::read_boxed_slice_exact
  - ReadBytes::scan_bytes
  - '&mut R::read_byte'
  - '&mut R::read_double_bytes'
  - '&mut R::read_triple_bytes'
  - '&mut R::read_quad_bytes'
  - '&mut R::read_buf'
  - '&mut R::read_buf_exact'
  - '&mut R::scan_bytes_aligned'
  - '&mut R::ignore_bytes'
  - '&mut R::pos'
  - '&mut S::ensure_seekback_buffer'
  - '&mut S::unread_buffer_len'
  - '&mut S::read_buffer_len'
  - '&mut S::seek_buffered'
  - '&mut S::seek_buffered_rel'
  - SeekBuffered::seek_buffered_rev
  - '&mut F::byte_len'
  - '&mut F::bytes_read'
  - '&mut F::bytes_available'
  source_file: /src/symphonia/symphonia-core/src/io/mod.rs
- function_names:
  - end_of_bitstream_error
  - vlc::codebook_error
  - ReadBitsLtr::realign
  - ReadBitsLtr::ignore_bits
  - ReadBitsLtr::ignore_bit
  - ReadBitsLtr::read_bool
  - ReadBitsLtr::read_bit
  - ReadBitsLtr::read_bits_leq32
  - ReadBitsLtr::read_bits_leq32_signed
  - ReadBitsLtr::read_bits_leq64
  - ReadBitsLtr::read_bits_leq64_signed
  - ReadBitsLtr::read_unary_zeros
  - ReadBitsLtr::read_unary_zeros_capped
  - ReadBitsLtr::read_unary_ones
  - ReadBitsLtr::read_unary_ones_capped
  - ReadBitsLtr::read_codebook
  - BitStreamLtr::new
  - BitStreamLtr::fetch_bits
  - BitStreamLtr::fetch_bits_partial
  - BitStreamLtr::get_bits
  - BitStreamLtr::num_bits_left
  - BitStreamLtr::consume_bits
  - BitReaderLtr::new
  - BitReaderLtr::fetch_bits_partial
  - BitReaderLtr::fetch_bits
  - BitReaderLtr::get_bits
  - BitReaderLtr::num_bits_left
  - BitReaderLtr::consume_bits
  - BitReaderLtr::bits_left
  - ReadBitsRtl::realign
  - ReadBitsRtl::ignore_bits
  - ReadBitsRtl::ignore_bit
  - ReadBitsRtl::read_bool
  - ReadBitsRtl::read_bit
  - ReadBitsRtl::read_bits_leq32
  - ReadBitsRtl::read_bits_leq32_signed
  - ReadBitsRtl::read_bits_leq64
  - ReadBitsRtl::read_bits_leq64_signed
  - ReadBitsRtl::read_unary_zeros
  - ReadBitsRtl::read_unary_zeros_capped
  - ReadBitsRtl::read_unary_ones
  - ReadBitsRtl::read_unary_ones_capped
  - ReadBitsRtl::read_codebook
  - BitStreamRtl::new
  - BitStreamRtl::fetch_bits
  - BitStreamRtl::fetch_bits_partial
  - BitStreamRtl::get_bits
  - BitStreamRtl::num_bits_left
  - BitStreamRtl::consume_bits
  - BitReaderRtl::new
  - BitReaderRtl::fetch_bits_partial
  - BitReaderRtl::fetch_bits
  - BitReaderRtl::get_bits
  - BitReaderRtl::num_bits_left
  - BitReaderRtl::consume_bits
  - BitReaderRtl::bits_left
  - tests::verify_bitstreamltr_ignore_bits
  - tests::verify_bitstreamltr_read_bool
  - tests::verify_bitstreamltr_read_bit
  - tests::verify_bitstreamltr_read_bits_leq32
  - tests::verify_bitstreamltr_read_bits_leq64
  - tests::verify_bitstreamltr_read_unary_zeros
  - tests::verify_bitstreamltr_read_unary_zeros_capped
  - tests::verify_bitstreamltr_read_unary_ones
  - tests::verify_bitstreamltr_read_unary_ones_capped
  - tests::verify_codebook_builder_make_empty
  - tests::generate_codebook
  - tests::verify_bitstreamltr_read_codebook
  - tests::fuzz_bitstreamltr_read_codebook
  - tests::verify_bitstreamrtl_ignore_bits
  - tests::verify_bitstreamrtl_read_bool
  - tests::verify_bitstreamrtl_read_bit
  - tests::verify_bitstreamrtl_read_bits_leq32
  - tests::verify_bitstreamrtl_read_bits_leq64
  - tests::verify_bitstreamrtl_read_unary_zeros
  - tests::verify_bitstreamrtl_read_unary_zeros_capped
  - tests::verify_bitstreamrtl_read_unary_ones
  - tests::verify_bitstreamrtl_read_unary_ones_capped
  - tests::verify_bitstreamrtl_read_codebook
  - tests::fuzz_bitstreamrtl_read_codebook
  source_file: /src/symphonia/symphonia-core/src/io/bit.rs
- function_names:
  - InnerCodecRegistry::default
  - InnerCodecRegistry::get
  - InnerCodecRegistry::get_at_tier
  - InnerCodecRegistry::register_at_tier
  - CodecRegistry::new
  - CodecRegistry::get_audio_decoder
  - CodecRegistry::get_audio_decoder_at_tier
  - CodecRegistry::get_video_decoder
  - CodecRegistry::get_video_decoder_at_tier
  - CodecRegistry::get_subtitle_decoder
  - CodecRegistry::get_subtitle_decoder_at_tier
  - CodecRegistry::register_audio_decoder
  - CodecRegistry::register_audio_decoder_at_tier
  - CodecRegistry::register_video_decoder
  - CodecRegistry::register_video_decoder_at_tier
  - CodecRegistry::register_subtitle_decoder
  - CodecRegistry::register_subtitle_decoder_at_tier
  - CodecRegistry::make_audio_decoder
  - CodecRegistry::make_video_decoder
  - CodecRegistry::make_subtitle_decoder
  - codec_profile
  - support_audio_codec
  - support_video_codec
  - support_subtitle_codec
  source_file: /src/symphonia/symphonia-core/src/codecs/registry.rs
- function_names:
  - SubtitleCodecId::new
  - SubtitleCodecId::default
  - SubtitleCodecId::from
  - SubtitleCodecId::fmt
  - SubtitleCodecParameters::new
  - SubtitleCodecParameters::for_codec
  - SubtitleCodecParameters::with_extra_data
  - SubtitleDecoder::decode
  source_file: /src/symphonia/symphonia-core/src/codecs/subtitle.rs
- function_names:
  - CodecProfile::new
  - CodecProfile::get
  - CodecProfile::from
  - CodecParameters::is_audio
  - CodecParameters::audio
  - CodecParameters::audio_mut
  - CodecParameters::is_video
  - CodecParameters::video
  - CodecParameters::video_mut
  - CodecParameters::is_subtitle
  - CodecParameters::subtitle
  - CodecParameters::subtitle_mut
  - CodecParameters::from
  - CodecParameters::from
  - CodecParameters::from
  - CodecId::from
  - CodecId::from
  - CodecId::from
  source_file: /src/symphonia/symphonia-core/src/codecs/mod.rs
- function_names:
  - VideoCodecId::default
  - VideoCodecId::new
  - VideoCodecId::from
  - VideoCodecId::fmt
  - VideoExtraDataId::default
  - VideoCodecParameters::for_codec
  - VideoCodecParameters::with_profile
  - VideoCodecParameters::with_level
  - VideoCodecParameters::with_width
  - VideoCodecParameters::with_height
  - VideoCodecParameters::add_extra_data
  source_file: /src/symphonia/symphonia-core/src/codecs/video.rs
- function_names:
  - AudioCodecId::default
  - AudioCodecId::new
  - AudioCodecId::from
  - AudioCodecId::fmt
  - AudioCodecParameters::new
  - AudioCodecParameters::for_codec
  - AudioCodecParameters::with_profile
  - AudioCodecParameters::with_sample_rate
  - AudioCodecParameters::with_sample_format
  - AudioCodecParameters::with_bits_per_sample
  - AudioCodecParameters::with_bits_per_coded_sample
  - AudioCodecParameters::with_channels
  - AudioCodecParameters::with_max_frames_per_packet
  - AudioCodecParameters::with_frames_per_block
  - AudioCodecParameters::with_extra_data
  - AudioCodecParameters::with_verification_code
  - AudioDecoderOptions::default
  - AudioDecoderOptions::gapless
  - AudioDecoderOptions::verify
  - AudioDecoder::decode
  source_file: /src/symphonia/symphonia-core/src/codecs/audio.rs
- function_names: []
  source_file: /src/symphonia/symphonia-core/src/video/mod.rs
- function_names:
  - FormatId::new
  - FormatId::from
  - FormatId::fmt
  - FormatOptions::default
  - FormatOptions::prebuild_seek_index
  - FormatOptions::seek_index_fill_period_ms
  - Track::new
  - Track::with_codec_params
  - Track::with_language
  - Track::with_time_base
  - Track::with_num_frames
  - Track::with_duration
  - Track::with_start_ts
  - Track::with_delay
  - Track::with_padding
  - Track::with_flags
  - Track::track_type
  - MediaInfo::from_track
  - MediaInfo::from_tracks
  - MediaInfo::new
  - MediaInfo::with_time_base
  - MediaInfo::with_duration
  - MediaInfo::with_start_ts
  - FormatReader::attachments
  - FormatReader::chapters
  - FormatReader::first_track
  - FormatReader::first_track_known_codec
  - FormatReader::default_track
  - matches_track_type
  - util::verify_seek_index_search
  source_file: /src/symphonia/symphonia-core/src/formats/mod.rs
- function_names:
  - bloom::fnv1a32
  - GenericProbeMatch::should_test
  - Hint::new
  - Hint::with_extension
  - Hint::mime_type
  - ProbeOptions::default
  - Probe::new
  - Probe::new_with_options
  - Probe::register_format
  - Probe::register_metadata
  - Probe::register_format_at_tier
  - Probe::register_metadata_at_tier
  - Probe::register
  - Probe::probe
  - Probe::probe_trailing
  - Probe::next
  - Probe::find_best_reader
  - read_and_append_metadata
  - find_reader
  - score
  - warn_junk_bytes
  - support_format
  - support_metadata
  source_file: /src/symphonia/symphonia-core/src/formats/probe.rs
- function_names: []
  source_file: /src/symphonia/symphonia-core/src/subtitle/mod.rs
- function_names:
  - Crc16Ansi::new
  - Crc16Ansi::crc
  - Crc16Ansi::process_byte
  - Crc16Ansi::process_buf_bytes
  - Crc16AnsiLe::new
  - Crc16AnsiLe::crc
  - Crc16AnsiLe::process_byte
  - Crc16AnsiLe::process_buf_bytes
  source_file: /src/symphonia/symphonia-core/src/checksum/crc16.rs
- function_names:
  - transform
  - Md5::default
  - Md5::md5
  - Md5::process_byte
  - Md5::process_buf_bytes
  - tests::verify_md5
  source_file: /src/symphonia/symphonia-core/src/checksum/md5.rs
- function_names: []
  source_file: /src/symphonia/symphonia-core/src/checksum/mod.rs
- function_names:
  - Crc32::new
  - Crc32::crc
  - Crc32::process_byte
  - Crc32::process_buf_bytes
  - tests::verify_crc32
  source_file: /src/symphonia/symphonia-core/src/checksum/crc32.rs
- function_names:
  - Crc8Ccitt::new
  - Crc8Ccitt::crc
  - Crc8Ccitt::process_byte
  - Crc8Ccitt::process_buf_bytes
  source_file: /src/symphonia/symphonia-core/src/checksum/crc8.rs
- function_names: []
  source_file: /src/symphonia/symphonia-core/src/dsp/mod.rs
- function_names:
  - Imdct::new
  - Imdct::new_scaled
  - Imdct::imdct
  - tests::imdct_analytical
  - tests::verify_imdct
  source_file: /src/symphonia/symphonia-core/src/dsp/mdct.rs
- function_names:
  - fft_twiddle_table
  - fft_twiddle_factors
  - Fft::new
  - Fft::size
  - Fft::fft_inplace
  - Fft::fft
  - Ifft::new
  - Ifft::size
  - Ifft::ifft
  - Ifft::ifft_inplace
  - t::r::a::n::s::f::o::r::m::merge
  - transform
  - complex
  - fft32
  - fft16
  - fft8
  - fft4
  - fft2
  source_file: /src/symphonia/symphonia-core/src/dsp/fft/no_simd.rs
- function_names:
  - Fft::new
  - Fft::size
  - Fft::fft
  - Fft::fft_inplace
  - Ifft::new
  - Ifft::size
  - Ifft::ifft
  - Ifft::ifft_inplace
  source_file: /src/symphonia/symphonia-core/src/dsp/fft/simd.rs
- function_names:
  - tests::dft_naive
  - tests::idft_naive
  - tests::check_complex
  - tests::verify_fft
  - tests::verify_fft_inplace
  - tests::verify_ifft
  - tests::verify_ifft_inplace
  - tests::verify_fft_reversible
  - tests::verify_fft_inplace_reversible
  source_file: /src/symphonia/symphonia-core/src/dsp/fft/mod.rs
- function_names:
  - dither::split_mix_64
  - dither::Xoshiro128pp::new
  - dither::Xoshiro128pp::next
  - impl_convert
  - i8_to_u8
  - i16_to_u16
  - i24_to_u32
  - i32_to_u32
  - F::into_sample
  - tests::verify_u8_from_sample
  - tests::verify_u16_from_sample
  - tests::verify_u24_from_sample
  - tests::verify_u32_from_sample
  - tests::verify_i8_from_sample
  - tests::verify_i16_from_sample
  - tests::verify_i24_from_sample
  - tests::verify_i32_from_sample
  - tests::verify_f64_from_sample
  - tests::verify_f32_from_sample
  source_file: /src/symphonia/symphonia-core/src/audio/conv.rs
- function_names:
  - u8::clamped
  - i8::clamped
  - u16::clamped
  - i16::clamped
  - u24::clamped
  - i24::clamped
  - u32::clamped
  - i32::clamped
  - f32::clamped
  - f64::clamped
  - shl_impl
  - shr_impl
  - impl_shifts
  - i24::inner
  - i24::to_le_bytes
  - i24::to_be_bytes
  - i24::to_ne_bytes
  - i24::fmt
  - i24::from
  - i24::from
  - i24::from
  - i24::add
  - i24::sub
  - i24::mul
  - i24::div
  - i24::not
  - i24::rem
  - i24::shl
  - i24::shr
  - i24::bitand
  - i24::bitor
  - i24::bitxor
  - u24::inner
  - u24::to_le_bytes
  - u24::to_be_bytes
  - u24::to_ne_bytes
  - u24::fmt
  - u24::from
  - u24::from
  - u24::from
  - u24::add
  - u24::sub
  - u24::mul
  - u24::div
  - u24::not
  - u24::rem
  - u24::shl
  - u24::shr
  - u24::bitand
  - u24::bitor
  - u24::bitxor
  - u8::to_ne_sample_bytes
  - u8::to_le_sample_bytes
  - u8::to_be_sample_bytes
  - u16::to_ne_sample_bytes
  - u16::to_le_sample_bytes
  - u16::to_be_sample_bytes
  - u24::to_ne_sample_bytes
  - u24::to_le_sample_bytes
  - u24::to_be_sample_bytes
  - u32::to_ne_sample_bytes
  - u32::to_le_sample_bytes
  - u32::to_be_sample_bytes
  - i8::to_ne_sample_bytes
  - i8::to_le_sample_bytes
  - i8::to_be_sample_bytes
  - i16::to_ne_sample_bytes
  - i16::to_le_sample_bytes
  - i16::to_be_sample_bytes
  - i24::to_ne_sample_bytes
  - i24::to_le_sample_bytes
  - i24::to_be_sample_bytes
  - i32::to_ne_sample_bytes
  - i32::to_le_sample_bytes
  - i32::to_be_sample_bytes
  - f32::to_ne_sample_bytes
  - f32::to_le_sample_bytes
  - f32::to_be_sample_bytes
  - f64::to_ne_sample_bytes
  - f64::to_le_sample_bytes
  - f64::to_be_sample_bytes
  source_file: /src/symphonia/symphonia-core/src/audio/sample.rs
- function_names:
  - Position::from_count
  - Position::from_wave_channel_count
  - Position::from_wave_channel_mask
  - Position::fmt
  - AmbisonicBFormat::fmt
  - ChannelLabel::from
  - ChannelLabel::from
  - Channels::count
  - Channels::get_canonical_index_for_positioned_channel
  - Channels::from
  - Channels::from
  - Channels::from
  - Channels::fmt
  source_file: /src/symphonia/symphonia-core/src/audio/channels.rs
- function_names:
  - impl_generic_func
  - GenericAudioBuffer::new
  - GenericAudioBuffer::spec
  - GenericAudioBuffer::num_planes
  - GenericAudioBuffer::is_empty
  - GenericAudioBuffer::frames
  - GenericAudioBuffer::is_unused
  - GenericAudioBuffer::capacity
  - GenericAudioBuffer::clear
  - GenericAudioBuffer::grow_capacity
  - GenericAudioBuffer::resize_with_silence
  - GenericAudioBuffer::resize_uninit
  - GenericAudioBuffer::render_silence
  - GenericAudioBuffer::render_uninit
  - GenericAudioBuffer::shift
  - GenericAudioBuffer::slice
  - GenericAudioBuffer::truncate
  - GenericAudioBuffer::trim
  - GenericAudioBuffer::samples_interleaved
  - GenericAudioBuffer::samples_planar
  - GenericAudioBuffer::copy_to
  - GenericAudioBuffer::copy_to_slice_interleaved
  - GenericAudioBuffer::copy_to_slice_planar
  - GenericAudioBuffer::copy_to_vec_interleaved
  - GenericAudioBuffer::copy_to_vecs_planar
  - GenericAudioBuffer::copy_bytes_interleaved_as
  - GenericAudioBuffer::copy_bytes_planar_as
  - GenericAudioBuffer::copy_bytes_interleaved
  - GenericAudioBuffer::copy_bytes_planar
  - GenericAudioBuffer::copy_bytes_to_vec_interleaved
  - GenericAudioBuffer::copy_bytes_to_vec_interleaved_as
  - GenericAudioBuffer::copy_bytes_to_vecs_planar
  - GenericAudioBuffer::copy_bytes_to_vecs_planar_as
  - GenericAudioBuffer::byte_len_as
  - GenericAudioBuffer::byte_len_per_plane_as
  - GenericAudioBuffer::byte_len_per_frame_as
  - GenericAudioBuffer::byte_len
  - GenericAudioBuffer::byte_len_per_plane
  - GenericAudioBuffer::byte_len_per_frame
  - impl_generic_ref_func
  - GenericAudioBufferRef::spec
  - GenericAudioBufferRef::num_planes
  - GenericAudioBufferRef::is_empty
  - GenericAudioBufferRef::frames
  - GenericAudioBufferRef::is_unused
  - GenericAudioBufferRef::capacity
  - GenericAudioBufferRef::samples_interleaved
  - GenericAudioBufferRef::samples_planar
  - GenericAudioBufferRef::copy_to
  - GenericAudioBufferRef::copy_to_slice_interleaved
  - GenericAudioBufferRef::copy_to_slice_planar
  - GenericAudioBufferRef::copy_to_vec_interleaved
  - GenericAudioBufferRef::copy_to_vecs_planar
  - GenericAudioBufferRef::copy_bytes_interleaved_as
  - GenericAudioBufferRef::copy_bytes_planar_as
  - GenericAudioBufferRef::copy_bytes_interleaved
  - GenericAudioBufferRef::copy_bytes_planar
  - GenericAudioBufferRef::copy_bytes_to_vec_interleaved
  - GenericAudioBufferRef::copy_bytes_to_vec_interleaved_as
  - GenericAudioBufferRef::copy_bytes_to_vecs_planar
  - GenericAudioBufferRef::copy_bytes_to_vecs_planar_as
  - GenericAudioBufferRef::byte_len_as
  - GenericAudioBufferRef::byte_len_per_plane_as
  - GenericAudioBufferRef::byte_len_per_frame_as
  - GenericAudioBufferRef::byte_len
  - GenericAudioBufferRef::byte_len_per_plane
  - GenericAudioBufferRef::byte_len_per_frame
  - GenericAudioBuffer::as_generic_audio_buffer_ref
  - impl_as_generic_audio_buffer_ref
  - impl_from_converions
  - impl_generic_slice_func
  - GenericAudioSlice::spec
  - GenericAudioSlice::num_planes
  - GenericAudioSlice::is_empty
  - GenericAudioSlice::frames
  - GenericAudioSlice::samples_interleaved
  - GenericAudioSlice::samples_planar
  - GenericAudioSlice::copy_to
  - GenericAudioSlice::copy_to_slice_interleaved
  - GenericAudioSlice::copy_to_slice_planar
  - GenericAudioSlice::copy_to_vec_interleaved
  - GenericAudioSlice::copy_to_vecs_planar
  - GenericAudioSlice::copy_bytes_interleaved_as
  - GenericAudioSlice::copy_bytes_planar_as
  - GenericAudioSlice::copy_bytes_interleaved
  - GenericAudioSlice::copy_bytes_planar
  - GenericAudioSlice::copy_bytes_to_vec_interleaved
  - GenericAudioSlice::copy_bytes_to_vec_interleaved_as
  - GenericAudioSlice::copy_bytes_to_vecs_planar
  - GenericAudioSlice::copy_bytes_to_vecs_planar_as
  - GenericAudioSlice::byte_len_as
  - GenericAudioSlice::byte_len_per_plane_as
  - GenericAudioSlice::byte_len_per_frame_as
  - GenericAudioSlice::byte_len
  - GenericAudioSlice::byte_len_per_plane
  - GenericAudioSlice::byte_len_per_frame
  source_file: /src/symphonia/symphonia-core/src/audio/generic.rs
- function_names:
  - AudioSlice::new
  - AudioSlice::slice
  - AudioSlice::spec
  - AudioSlice::num_planes
  - AudioSlice::is_empty
  - AudioSlice::frames
  - AudioSlice::plane
  - AudioSlice::plane_pair
  - AudioSlice::iter_planes
  - AudioSlice::iter_interleaved
  - AudioSlice::copy_to_slice_interleaved
  - AudioSlice::copy_bytes_interleaved_as
  - AudioSlice::copy_bytes_planar_as
  - AudioSlice::copy_bytes_interleaved
  - AudioSlice::copy_bytes_planar
  - AudioSlice::index
  - AudioSlice::index
  - AudioSliceMut::new
  - AudioSliceMut::slice
  - AudioSliceMut::slice_mut
  - AudioSliceMut::spec
  - AudioSliceMut::num_planes
  - AudioSliceMut::is_empty
  - AudioSliceMut::frames
  - AudioSliceMut::plane
  - AudioSliceMut::plane_pair
  - AudioSliceMut::iter_planes
  - AudioSliceMut::iter_interleaved
  - AudioSliceMut::copy_to_slice_interleaved
  - AudioSliceMut::plane_mut
  - AudioSliceMut::plane_pair_mut
  - AudioSliceMut::iter_planes_mut
  - AudioSliceMut::copy_from_slice_interleaved
  - AudioSliceMut::copy_bytes_interleaved_as
  - AudioSliceMut::copy_bytes_planar_as
  - AudioSliceMut::copy_bytes_interleaved
  - AudioSliceMut::copy_bytes_planar
  - AudioSliceMut::index
  - AudioSliceMut::index_mut
  - AudioSliceMut::index
  - AudioSliceMut::index_mut
  source_file: /src/symphonia/symphonia-core/src/audio/slice.rs
- function_names:
  - AudioSpec::new
  - AudioSpec::rate
  - AudioSpec::channels
  - AudioPlanes::new
  - AudioPlanes::next
  - AudioPlanesMut::new
  - AudioPlanesMut::next
  - Interleaved::new
  - Interleaved::next
  - Audio::plane_by_position
  - Audio::plane_pair_by_position
  - Audio::samples_interleaved
  - Audio::samples_planar
  - Audio::copy_to_slice_planar
  - Audio::copy_to_vec_interleaved
  - Audio::copy_to_vecs_planar
  - AudioMut::plane_by_position_mut
  - AudioMut::plane_pair_by_position_mut
  - AudioMut::apply
  - AudioMut::copy_from
  - AudioMut::copy_from_slice_planar
  - AudioBytes::byte_len_as
  - AudioBytes::byte_len_per_plane_as
  - AudioBytes::byte_len_per_frame_as
  - AudioBytes::byte_len
  - AudioBytes::byte_len_per_plane
  - AudioBytes::byte_len_per_frame
  - AudioBytes::copy_bytes_to_vec_interleaved
  - AudioBytes::copy_bytes_to_vec_interleaved_as
  - AudioBytes::copy_bytes_to_vecs_planar
  - AudioBytes::copy_bytes_to_vecs_planar_as
  - AudioBufferBytes::max_byte_len_as
  - AudioBufferBytes::max_byte_len
  source_file: /src/symphonia/symphonia-core/src/audio/mod.rs
- function_names:
  - AudioBuffer::new
  - AudioBuffer::is_unused
  - AudioBuffer::capacity
  - AudioBuffer::clear
  - AudioBuffer::grow_capacity
  - AudioBuffer::slice
  - AudioBuffer::slice_mut
  - AudioBuffer::append
  - AudioBuffer::resize
  - AudioBuffer::resize_with_sample
  - AudioBuffer::resize_with_silence
  - AudioBuffer::resize_uninit
  - AudioBuffer::render
  - AudioBuffer::render_with
  - AudioBuffer::render_silence
  - AudioBuffer::render_uninit
  - AudioBuffer::shift
  - AudioBuffer::truncate
  - AudioBuffer::trim
  - AudioBuffer::spec
  - AudioBuffer::num_planes
  - AudioBuffer::is_empty
  - AudioBuffer::frames
  - AudioBuffer::plane
  - AudioBuffer::plane_pair
  - AudioBuffer::iter_planes
  - AudioBuffer::iter_interleaved
  - AudioBuffer::copy_to_slice_interleaved
  - AudioBuffer::plane_mut
  - AudioBuffer::plane_pair_mut
  - AudioBuffer::iter_planes_mut
  - AudioBuffer::copy_from_slice_interleaved
  - AudioBuffer::copy_bytes_interleaved_as
  - AudioBuffer::copy_bytes_planar_as
  - AudioBuffer::copy_bytes_interleaved
  - AudioBuffer::copy_bytes_planar
  - AudioBuffer::max_byte_len_per_plane_as
  - AudioBuffer::max_byte_len_per_plane
  - AudioBuffer::index
  - AudioBuffer::index_mut
  - AudioBuffer::index
  - AudioBuffer::index_mut
  - MutableAudioPlaneSlices::new
  - MutableAudioPlaneSlices::deref
  - MutableAudioPlaneSlices::deref_mut
  source_file: /src/symphonia/symphonia-core/src/audio/buf.rs
- function_names:
  - plane_pair_by_buffer_index
  - plane_pair_by_buffer_index_mut
  - g::e::t::_::s::u::b::_::r::a::n::g::e::panic_start_index_overflow
  - g::e::t::_::s::u::b::_::r::a::n::g::e::panic_end_index_overflow
  - get_sub_range
  - copy_to_slice_interleaved
  - copy_from_slice_interleaved
  - convert
  - identity
  - copy_to_slice
  - copy_bytes_interleaved
  - copy_bytes_planar
  - tests::verify_copy_from_slice_interleaved
  source_file: /src/symphonia/symphonia-core/src/audio/util.rs
- function_names:
  - probe_stream_start
  - probe_stream_end
  - scan_stream_end
  source_file: /src/symphonia/symphonia-format-ogg/src/physical.rs
- function_names:
  - read_page_header
  - sync_page
  - PagePackets::partial_packet
  - PagePackets::next
  - Page::packets
  - Page::num_packets
  - PageReader::try_new
  - PageReader::try_next_page
  - PageReader::next_page
  - PageReader::next_page_for_serial
  - PageReader::first_packet
  - PageReader::header
  - PageReader::page
  - PageReader::read_page_body
  source_file: /src/symphonia/symphonia-format-ogg/src/page.rs
- function_names: []
  source_file: /src/symphonia/symphonia-format-ogg/src/common.rs
- function_names:
  - OggReader::try_new
  - OggReader::read_page
  - OggReader::have_all_streams_read_last_page
  - OggReader::peek_logical_packet
  - OggReader::discard_logical_packet
  - OggReader::next_logical_packet
  - OggReader::do_seek
  - OggReader::start_new_physical_stream
  - OggReader::score
  - OggReader::try_probe_new
  - OggReader::probe_data
  - OggReader::format_info
  - OggReader::media_info
  - OggReader::next_packet
  - OggReader::metadata
  - OggReader::chapters
  - OggReader::tracks
  - OggReader::seek
  - OggReader::into_inner
  source_file: /src/symphonia/symphonia-format-ogg/src/demuxer.rs
- function_names:
  - LogicalStream::new
  - LogicalStream::reset
  - LogicalStream::is_ready
  - LogicalStream::max_rap_period
  - LogicalStream::track
  - LogicalStream::has_read_last_page
  - LogicalStream::read_page
  - LogicalStream::read_page_init
  - LogicalStream::has_packets
  - LogicalStream::peek_packet
  - LogicalStream::next_packet
  - LogicalStream::consume_packet
  - LogicalStream::inspect_start_page
  - LogicalStream::inspect_end_page
  - LogicalStream::inspect_page
  - LogicalStream::is_single_page_stream
  - LogicalStream::get_packet
  - LogicalStream::save_partial_packet
  source_file: /src/symphonia/symphonia-format-ogg/src/logical.rs
- function_names: []
  source_file: /src/symphonia/symphonia-format-ogg/src/lib.rs
- function_names:
  - detect
  - utf8_decode_be_u64
  - decode_frame_header
  - FlacPacketParser::parse_next_packet_dur
  - FlacMapper::name
  - FlacMapper::track
  - FlacMapper::track_mut
  - FlacMapper::make_parser
  - FlacMapper::reset
  - FlacMapper::map_packet
  source_file: /src/symphonia/symphonia-format-ogg/src/mappings/flac.rs
- function_names:
  - detect
  - OpusPacketParser::parse_next_packet_dur
  - OpusMapper::name
  - OpusMapper::reset
  - OpusMapper::track
  - OpusMapper::track_mut
  - OpusMapper::make_parser
  - OpusMapper::map_packet
  source_file: /src/symphonia/symphonia-format-ogg/src/mappings/opus.rs
- function_names:
  - VorbisPacketParser::new
  - VorbisPacketParser::reset
  - VorbisPacketParser::parse_next_packet_dur
  - detect
  - VorbisMapper::name
  - VorbisMapper::max_rap_period
  - VorbisMapper::track
  - VorbisMapper::track_mut
  - VorbisMapper::reset
  - VorbisMapper::make_parser
  - VorbisMapper::map_packet
  - VorbisMapper::is_ready
  - read_ident_header
  - read_setup
  - skip_codebooks
  - skip_codebook
  - skip_time_domain_transforms
  - skip_floors
  - skip_floor
  - skip_floor0_setup
  - skip_floor1_setup
  - skip_residues
  - skip_residue_setup
  - skip_mappings
  - skip_mapping
  - skip_mapping_type0_setup
  - read_modes
  - read_mode
  - ilog
  - lookup1_values
  source_file: /src/symphonia/symphonia-format-ogg/src/mappings/vorbis.rs
- function_names:
  - detect
  - Mapper::absgp_to_ts
  - Mapper::max_rap_period
  - Mapper::is_ready
  - make_null_mapper
  - NullMapper::new
  - NullMapper::name
  - NullMapper::track
  - NullMapper::track_mut
  - NullMapper::reset
  - NullMapper::make_parser
  - NullMapper::map_packet
  - NullPacketParser::parse_next_packet_dur
  source_file: /src/symphonia/symphonia-format-ogg/src/mappings/mod.rs
- function_names:
  - default::get_codecs
  - default::get_probe
  - default::register_enabled_codecs
  - default::register_enabled_formats
  source_file: /src/symphonia/symphonia/src/lib.rs
- function_names:
  - fuzz_demuxer
  source_file: /src/symphonia/symphonia/fuzz/src/demuxer.rs
- function_names:
  - fuzz_audio_decoder
  source_file: /src/symphonia/symphonia/fuzz/src/lib.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/demux_aiff.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/demux_flac.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/demux_wav.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_any.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_aac.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_adpcm.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_flac.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_alac.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_mpa.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/demux_mkv.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/demux_ogg.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/demux_caf.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_pcm.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/decode_vorbis.rs
- function_names:
  - fuzz_target
  source_file: /src/symphonia/symphonia/fuzz/fuzz_targets/demux_isomp4.rs
- function_names:
  - main
  source_file: /src/symphonia/symphonia/examples/getting-started.rs
- function_names:
  - main
  source_file: /src/symphonia/symphonia/examples/basic-interleaved.rs
- function_names:
  - float32_unpack
  - lookup1_values
  - unpack_vq_lookup_type1
  - unpack_vq_lookup_type2
  - synthesize_codewords
  - VorbisCodebook::read
  - VorbisCodebook::read_scalar
  - VorbisCodebook::read_vq
  - VorbisCodebook::dimensions
  - tests::verify_ilog
  - tests::naive_lookup1_values
  - tests::verify_lookup1_values
  - tests::verify_synthesize_codewords
  - tests::verify_synthesize_codewords_overspecified
  source_file: /src/symphonia/symphonia-codec-vorbis/src/codebook.rs
- function_names:
  - generate_win_curve
  - Windows::new
  source_file: /src/symphonia/symphonia-codec-vorbis/src/window.rs
- function_names:
  - io_try_or_ret
  - try_or_ret
  - Floor0::try_read
  - Floor0::read_setup
  - Floor0::read_channel
  - Floor0::is_unused
  - Floor0::synthesis
  - bark
  - bark_map
  - linear_floor0_value
  - Floor1::try_read
  - Floor1::read_setup
  - Floor1::synthesis_step1
  - Floor1::synthesis_step2
  - Floor1::read_channel
  - Floor1::is_unused
  - Floor1::synthesis
  - get_range
  - find_neighbors
  - render_point
  - render_line
  source_file: /src/symphonia/symphonia-codec-vorbis/src/floor.rs
- function_names:
  - ilog
  - BitSetIterator::next
  - decl_bitset
  - tests::verify_bitset_count
  - tests::verify_bitset_iter
  source_file: /src/symphonia/symphonia-codec-vorbis/src/common.rs
- function_names:
  - Dsp::reset
  - DspChannel::new
  - DspChannel::synth
  - DspChannel::reset
  - overlap_add
  source_file: /src/symphonia/symphonia-codec-vorbis/src/dsp.rs
- function_names:
  - read_extradata
  - VorbisDecoder::try_new
  - VorbisDecoder::decode_inner
  - VorbisDecoder::reset
  - VorbisDecoder::codec_info
  - VorbisDecoder::codec_params
  - VorbisDecoder::decode_ref
  - VorbisDecoder::finalize
  - VorbisDecoder::last_decoded
  - VorbisDecoder::try_registry_new
  - VorbisDecoder::supported_codecs
  - read_ident_header
  - read_setup
  - read_codebooks
  - read_time_domain_transforms
  - read_floors
  - read_floor
  - read_residues
  - read_residue
  - read_mappings
  - read_mapping
  - read_modes
  - read_mapping_type0
  - read_mode
  - map_vorbis_channel
  source_file: /src/symphonia/symphonia-codec-vorbis/src/lib.rs
- function_names:
  - ResidueVqClass::is_used
  - Residue::try_read
  - Residue::read_setup
  - Residue::read_residue
  - Residue::deinterleave_2
  - Residue::read_residue_inner_type_2
  - Residue::read_residue_inner_type_0_1
  - Residue::prepare_partition_classes
  - Residue::prepare_type_2_format_buffer
  - decode_classes
  - read_residue_partition_format0
  - read_residue_partition_format1
  source_file: /src/symphonia/symphonia-codec-vorbis/src/residue.rs
- function_names:
  - sync_frame
  - read_frame_header
  - is_likely_frame_header
  - utf8_decode_be_u64
  - tests::verify_utf8_decode_be_u64
  source_file: /src/symphonia/symphonia-bundle-flac/src/frame.rs
- function_names:
  - decorrelate_left_side
  - decorrelate_mid_side
  - decorrelate_right_side
  - FlacDecoder::try_new
  - FlacDecoder::decode_inner
  - FlacDecoder::codec_info
  - FlacDecoder::reset
  - FlacDecoder::codec_params
  - FlacDecoder::decode_ref
  - FlacDecoder::finalize
  - FlacDecoder::last_decoded
  - FlacDecoder::try_registry_new
  - FlacDecoder::supported_codecs
  - read_subframe
  - samples_shl
  - decode_constant
  - decode_verbatim
  - decode_fixed_linear
  - decode_linear
  - decode_residual
  - decode_rice_partition
  - rice_signed_to_i32
  - verify_rice_signed_to_i32
  - fixed_predict
  - lpc_predict
  source_file: /src/symphonia/symphonia-bundle-flac/src/decoder.rs
- function_names:
  - MovingAverage::push
  - MovingAverage::reset
  - MovingAverage::average
  - MovingAverage::default
  - FragmentFooter::new
  - Fragment::new
  - Fragment::update
  - Fragment::parse_header
  - PacketBuilder::set_max_frame_size
  - PacketBuilder::get_max_frame_size
  - PacketBuilder::set_avg_frame_size
  - PacketBuilder::get_max_avg_frame_size
  - PacketBuilder::last_header
  - PacketBuilder::push_fragment
  - PacketBuilder::try_build
  - PacketBuilder::reset
  - ResyncInfo::next_ts
  - PacketParser::soft_reset
  - PacketParser::try_read_fragment
  - PacketParser::read_fragment
  - PacketParser::read_fragment_or_eos
  - PacketParser::parse
  - PacketParser::resync
  - PacketParser::reset
  - calc_sync_info
  - strict_frame_header_check
  - may_contain_sync_preamble
  - scan_for_sync_preamble
  source_file: /src/symphonia/symphonia-bundle-flac/src/parser.rs
- function_names:
  - FlacReader::try_new
  - FlacReader::init_with_metadata
  - FlacReader::score
  - FlacReader::try_probe_new
  - FlacReader::probe_data
  - FlacReader::format_info
  - FlacReader::media_info
  - FlacReader::attachments
  - FlacReader::next_packet
  - FlacReader::metadata
  - FlacReader::chapters
  - FlacReader::tracks
  - FlacReader::seek
  - FlacReader::into_inner
  - read_stream_info_block
  source_file: /src/symphonia/symphonia-bundle-flac/src/demuxer.rs
- function_names: []
  source_file: /src/symphonia/symphonia-bundle-flac/src/lib.rs
- function_names:
  - Validator::update
  - Validator::md5
  - copy_as_i24
  - copy_as
  source_file: /src/symphonia/symphonia-bundle-flac/src/validate.rs
- function_names:
  - read_id3v1
  - decode_iso8859_buf
  - Id3v1Reader::try_new
  - Id3v1Reader::score
  - Id3v1Reader::try_probe_new
  - Id3v1Reader::probe_data
  - Id3v1Reader::metadata_info
  - Id3v1Reader::read_all
  - Id3v1Reader::into_inner
  source_file: /src/symphonia/symphonia-metadata/src/id3v1.rs
- function_names:
  - ApeHeader::read_identity
  - ApeHeader::read
  - ApeItem::read
  - ApeReader::try_new
  - ApeReader::score
  - ApeReader::try_probe_new
  - ApeReader::probe_data
  - ApeReader::metadata_info
  - ApeReader::read_all
  - ApeReader::into_inner
  - read_key
  - read_utf8_value
  - try_parse_image_data
  source_file: /src/symphonia/symphonia-metadata/src/ape.rs
- function_names: []
  source_file: /src/symphonia/symphonia-metadata/src/embedded.rs
- function_names: []
  source_file: /src/symphonia/symphonia-metadata/src/lib.rs
- function_names:
  - min_frame_size
  - validate_frame_id
  - from_ascii
  - null_frame_reader
  - find_frame_reader
  - find_legacy_frame_reader
  - read_id3v2p2_frame
  - read_id3v2p3_frame
  - read_id3v2p4_frame
  - append_tag_sub_fields
  source_file: /src/symphonia/symphonia-metadata/src/id3v2/frames.rs
- function_names:
  - read_id3v2_header
  - read_id3v2p3_extended_header
  - read_id3v2p4_extended_header
  - read_id3v2_body
  - read_id3v2
  - ChapterGroupBuilder::error
  - ChapterGroupBuilder::is_unique_key
  - ChapterGroupBuilder::add_toc
  - ChapterGroupBuilder::add_chapter
  - C::h::a::p::t::e::r::G::r::o::u::p::B::u::i::l::d::e::r::::::::b::u::i::l::d::dfs
  - ChapterGroupBuilder::build
  - Id3v2Reader::try_new
  - Id3v2Reader::score
  - Id3v2Reader::try_probe_new
  - Id3v2Reader::probe_data
  - Id3v2Reader::metadata_info
  - Id3v2Reader::read_all
  - Id3v2Reader::into_inner
  source_file: /src/symphonia/symphonia-metadata/src/id3v2/mod.rs
- function_names:
  - read_syncsafe_leq32
  - decode_unsynchronisation
  - UnsyncStream::new
  - UnsyncStream::into_inner
  - UnsyncStream::byte_len
  - UnsyncStream::bytes_read
  - UnsyncStream::bytes_available
  - UnsyncStream::read_byte
  - UnsyncStream::read_double_bytes
  - UnsyncStream::read_triple_bytes
  - UnsyncStream::read_quad_bytes
  - UnsyncStream::read_buf
  - UnsyncStream::read_buf_exact
  - UnsyncStream::scan_bytes_aligned
  - UnsyncStream::ignore_bytes
  - UnsyncStream::pos
  - tests::verify_read_syncsafe_leq32
  source_file: /src/symphonia/symphonia-metadata/src/id3v2/unsync.rs
- function_names:
  - FrameInfo::new
  - Encoding::parse
  - decode_string_buf
  - decode_id3v2_iso8859_1
  - read_date
  - read_encoding
  - read_lang_code
  - read_play_counter
  - read_string
  - read_string_ignore_empty
  - read_string_list
  - read_aenc_frame
  - read_apic_frame
  - read_atxt_frame
  - read_chap_frame
  - read_comm_frame
  - read_comr_frame
  - read_crm_frame
  - read_ctoc_frame
  - read_encr_frame
  - read_geob_frame
  - read_grid_frame
  - read_mcdi_frame
  - read_owne_frame
  - read_pcnt_frame
  - read_popm_frame
  - read_poss_frame
  - read_priv_frame
  - read_raw_frame
  - read_sign_frame
  - read_text_frame
  - read_tipl_frame
  - read_txxx_frame
  - read_ufid_frame
  - read_url_frame
  - read_user_frame
  - read_uslt_frame
  - read_wxxx_frame
  - skip_frame
  - map_raw_tag
  - tests::verify_read_date
  - tests::verify_read_encoding
  - tests::verify_read_lang_code
  - tests::verify_read_play_counter
  - tests::verify_read_string
  - tests::verify_read_string_ignore_empty
  - tests::verify_read_string_list
  source_file: /src/symphonia/symphonia-metadata/src/id3v2/frames/readers.rs
- function_names:
  - info::parse_riff_info_chunk
  - id3::read_riff_id3_chunk
  source_file: /src/symphonia/symphonia-metadata/src/embedded/riff.rs
- function_names:
  - printable_ascii_to_string
  - read_flac_comment_block
  - read_flac_picture_block
  - read_flac_seektable_block
  - read_flac_application_block
  - read_flac_cuesheet_block
  - read_flac_cuesheet_track
  - read_flac_cuesheet_track_index
  - escape_identifier
  source_file: /src/symphonia/symphonia-metadata/src/embedded/flac.rs
- function_names:
  - parse_base64_picture_block
  - parse_base64_cover_art
  - p::a::r::s::e::_::c::h::a::p::t::e::r::_::t::i::m::e::s::t::a::m::p::parse_unsigned_num
  - parse_chapter_timestamp
  - try_parse_chapter_info_key
  - parse_vorbis_comment
  - read_vorbis_comment
  - tests::verify_parse_chapter_timestamp
  source_file: /src/symphonia/symphonia-metadata/src/embedded/vorbis.rs
- function_names:
  - parse_itunes_tag
  source_file: /src/symphonia/symphonia-metadata/src/utils/itunes.rs
- function_names:
  - get_genre_name
  source_file: /src/symphonia/symphonia-metadata/src/utils/id3v1.rs
- function_names:
  - d::e::c::o::d::e::rfc4648_base64_symbols
  - decode
  - tests::verify_base64_decode
  source_file: /src/symphonia/symphonia-metadata/src/utils/base64.rs
- function_names: []
  source_file: /src/symphonia/symphonia-metadata/src/utils/mod.rs
- function_names:
  - non_zero
  - try_get_image_info
  - parse_jpeg
  - parse_png
  - parse_bitmap
  - parse_gif
  source_file: /src/symphonia/symphonia-metadata/src/utils/images.rs
- function_names:
  - get_visual_key_from_picture_type
  source_file: /src/symphonia/symphonia-metadata/src/utils/id3v2.rs
- function_names:
  - MetadataBuilder::add_mapped_tags_with_parser
  - MetadataBuilder::add_mapped_tags
  - noop_parser
  - parse_bpm
  - parse_compilation
  - parse_disc_number_exclusive
  - parse_disc_number
  - parse_disc_total
  - parse_movement_number
  - parse_movement_total
  - parse_original_recording_year
  - parse_original_release_year
  - parse_part_number_exclusive
  - parse_part_total
  - parse_podcast_flag
  - parse_rating
  - parse_recording_year
  - parse_release_year
  - parse_track_number_exclusive
  - parse_track_number
  - parse_track_total
  - parse_itunes_content_advisory
  - parse_id3v2_genre
  - parse_bool
  - parse_m_of_n
  - tests::arc_string
  - tests::verify_parse_m_of_n
  - tests::verify_parse_id3v2_genre
  source_file: /src/symphonia/symphonia-metadata/src/utils/std_tag.rs
